因為 NUMA 架構提供單一系統映像,所以通常可以執行沒有經過特殊最佳化的作業系統。
遠端記憶體存取的延遲較長,會使處理器使用率過低,經常要等待資料傳輸到本機節點,而且 NUMA 連線會成為具有高記憶體頻寬需求的應用程式的瓶頸。
此外,這種系統上的效能變數很大。例如,如果應用程式在一次基準執行時將記憶體放置在本機,但後續的一次執行碰巧將所有這些記憶體放置於遠端節點上,此時效能就會發生變更。此現象使容量規劃變得困難。
一些高端 UNIX 系統提供對 NUMA 最佳化的支援,該最佳化是在編譯器和程式設計程式庫中進行。此支援需要軟體開發人員調整和重新編譯其程式才能獲得最佳的效能。針對一個系統進行的最佳化不能保證在下一代相同系統上也能正常發揮作用。其他系統已允許管理員明確決定應執行應用程式的節點。針對要求所有記憶體均必須是本機記憶體的某些應用程式,可能接受這種做法,不過變更工作負載時,會造成管理負擔,並且會導致節點之間的不平衡。
理想情況下,系統軟體提供透明的 NUMA 支援,因此應用程式可以即時受益,無需進行修改。該系統應充分利用本機記憶體並且智慧排程程式,無需管理員經常干預。最後,該系統必須在不影響公平性或效能的情況下,對不斷變更的狀況作出良好的回應。