Linux
numactl --localalloc
有什麼作用?
做什麼
numactl --localalloc
?它是否僅將程序分配綁定到numactl --localalloc
執行的單個節點?或者它是否確保每當程序從其本地記憶體分配其給定記憶體時?
--localalloc
將強制記憶體分配來自程序正在執行的節點的本地池,無論可能是什麼節點。要強制綁定到特定處理器,
--physcpubind
必須指定該選項。當與 localalloc 結合使用時,它將強制程序在指定節點上執行,並且只從該節點中提取記憶體。
--preferred
如果可能,告訴它從特定節點分配,但如果沒有,則使用遠端記憶體。
我對文件的理解是,
--localalloc
它將在進行系統呼叫的 CPU 節點上分配記憶體。這應該適用於將工作執行緒固定到單個 CPU 的應用程序,以及與malloc
保留每個執行緒記憶體池的庫(例如TCMalloc )結合使用。