Sql-Server

SQL Server 2016 的 Numa 節點配置

  • May 1, 2019

我對我的一個新建構的 sql 伺服器有一個問題,我們計劃將我們的 SQL 數據庫從在 windows 2012 上執行的舊 SQL2012 遷移。

新版本 - Windows 2016 上的 SQL2016

我現在的

$$ SQL2012 $$==> 當查詢 os_nodes dmv 顯示我假設的 4 個 numa 節點配置,記憶體node id=0,1,2,3 & processor group0,1,0,1 和scheduler count= 20 用於所有 id 我的新

$$ SQL2016 $$==> 當查詢 os_nodes dmv 顯示我假設的 8 個 numa 節點配置為memory node id=0,0,0,0,1,1,1,1 & processor group0,0,0,0,1,1,1,1和scheduler count= 9 代表所有 id 以下是新舊配置 SQL 伺服器之間來自 os_nodes dmv 的 O/P

dmv os_nodes_o/p

問題

通過任務管理器/ssms 查看時,它顯示 2 個 Numa 節點。我對 8 個 Numa 節點的上述理解是否錯誤?

如果這些是 2 個 Numa 節點,與目前設置相比,我會對性能產生任何影響嗎?

另請注意softnuma_configuration_desc 顯示sql2016 的ON

請建議

通過任務管理器/ssms 查看時,它顯示 2 個 Numa 節點。我對 8 個 Numa 節點的上述理解是否錯誤?

不,SQL Server 2016 開始提供自動 numa 節點分區(軟 numa),這就是您在此處看到的。

如果這些是 2 個 Numa 節點,與目前設置相比,我會對性能產生任何影響嗎?

沒法說。從 2016 年開始,自動 Soft-Numa 作為預設值添加到產品中,因為某些任務和執行緒是基於每個 numa 的。因此,在許多具有高核心數和低 numa 節點數的環境中,使用 soft-numa 會提高整體性能。

您的里程可能會有所不同。如果您不確定或不想測試新配置,我建議您暫時關閉自動 soft-numa,直到您可以測試為止。這是基於絕對沒有數據,但升級之間的配置穩定。

如果要關閉 soft-numa,可以執行以下命令:

ALTER SERVER CONFIGURATION SET SOFTNUMA OFF

引用自:https://dba.stackexchange.com/questions/237075