2014-12-02 546 views

回答

1

這取決於您所處的分佈和底層硬件。應在BIOS中啓用NUMA。要檢查是否NUMA在您的Linux使用禁用:

`grep -i numa /var/log/dmesg` 

這個返回找到沒有NUMA配置中,當啓用NUMA,dmesg的不顯示NUMA初始化的任何信息。

如果在BIOS中啓用NUMA,則執行命令numactl --hardware以列出系統上可用的節點。

請注意,您也可以將numa=off設置爲在grub.conf中禁用,但最好使用BIOS設置更改它。

+0

感謝您的回覆,我想在系統中啓用NUMA。但是在Linux操作系統中有一種叫做NUMA平衡器的東西,如果我沒有錯的話,它就是一個守護進程,它會自動優化運行中的調度。我只想知道如何禁用它,以避免自動平衡。 – 2014-12-03 09:32:32

+0

我們可以使用echo 0>/proc/sys/kernel/numa_balancing禁用numa平衡器 – 2014-12-04 10:24:56

+0

是的,但是在grub.conf中設置「numa = off」在重新啓動時更持久。 – askb 2014-12-04 11:50:17

4

可以通過將numa_balancing=disable參數傳遞給內核來禁用自動NUMA平衡。確切的做法取決於正在使用的引導裝載程序。相同的參數可以經由kernel.numa_balancing的sysctl進行控制:

echo 0 > /proc/sys/kernel/numa_balancing 

sysctl kernel.numa_balancing=0 

它也可以在/etc/sysctl.conf上處理該文件分佈設置。