2011-05-29 34 views
1

我已經在尋找適用於X86-64處理器的NUMA文檔,不幸的是我只找到NUMA的優化文檔。適用於x86-64處理器的NUMA文檔?

我要的是:我怎麼在系統初始化NUMA(這將包括獲取系統的內存拓撲結構和處理器拓撲)。有沒有人知道關於NUMA X86-64 AMD和Intel處理器的良好文檔?

回答

3

我知道,如果你希望系統的拓撲結構,你可以從ACPI SLIT(系統局部性信息表)或SRAT(靜態資源關係表)。您可以從這裏的ACPI規範(http://www.acpi.info/spec.htm),特別是第5.2.16和5.2.17節瞭解更多信息。

基本上,使用SRAT以確定哪些存儲器範圍相關聯的與CPU和使用SLIT以確定使用特定的CPU /存儲器範圍的相對成本。這兩個表都是可選的,但根據我的經驗,大多數NUMA系統至少有一個有用的SRAT。

至於初始化推移,我不認爲我能幫助很多。您可能想要了解如何在Linux內核(或BSD內核)上啓動處理器。您可能還需要閱讀本地APIC,因爲它們用於初始化x86 AP。

+0

謝謝..我現在正在下載ACPI規範... – prinzrainer 2011-06-09 08:06:38

+0

我仍然懷疑bochs是否會支持NUMA模擬(你是否有一個免費的模擬器,它有一個支持NUMA和x2APIC的debbugger?).. 。儘管我猜想即使仿真器/實際機器沒有NUMA支持(通過修改ACPI表格,只是爲了NUMA仿真,即使沒有任何性能增益),也可以實際上實現NUMA域。內核本身...... – prinzrainer 2011-06-09 08:18:51

+0

我不知道任何具有NUMA支持的免費模擬器。您可以嘗試看看AMD SimNow!模擬器,但我不認爲它具有多CPU支持或x2APIC(儘管它模擬了很多現代硬件)。 否則,我只是用Bochs的或Qemu中的SMP模式(甚至可能添加這些ACPI表)。我沒有看過Qemu的來源,但是我知道Bochs寫得很好,你可能會考慮修改它,至少是原始的NUMA模擬。 – 2011-06-09 15:19:38