2.13. numad

numad 是一自動 NUMA 親和性管理 (affinity management)daemon。為了動態改善 NUMA 資源分配和管理(乃至系統效能),numad 於系統內監測 NUMA 拓撲和資源使用量。根據系統工作負載,numad 能夠改善高達百分之五十的效能基準。此外,numad 也提供能夠透過各種工作管理系統取得的設置前建議服務,輔助 CPU 與記憶體資源的最初結合的過程。
numad 監測器定期取得「/proc 」檔案系統中資訊,使系統資源能夠以每一節點基準使用。numad 會試圖維持一個特定的資源使用量水平,並在必要時透過移動 NUMA 節點之間的處理序以重新平衡資源分配。numad 透過定位與隔離系統的 NUMA 節點子集上重要的處理序,達到最佳 NUMA 效能。
numad 主要對消耗大量資源,和包含在整體系統資源子集內的長期運行處理序有益。numad 也有益於需要消耗多個 NUMA 節點資源的應用程式。然而,numad 的益處會隨著系統資源消耗百分比的增加而降低。
當處理序僅運行數分鐘或者不消耗很多資源時,numad 不大可能對效能進行改善。持續與不可預測的記憶體存取模式的系統(例如:大量的內存資料庫),也不大可能受益於使用 numad。
更多有關使用 numad 的資訊,詳見〈節 3.3.5, “用 numad 自動管理 NUMA 親和性”〉或〈節 A.14, “numad”〉或參閱 man page:
$ man numad