共用方式為


如何:設定 SQL Server 使用軟體 NUMA

新增: 2005 年 12 月 5 日

若要設定 SQL Server 來使用軟體非統一記憶體存取 (軟體 NUMA),您必須編輯此登錄來加入節點組態相似性遮罩。軟體 NUMA 遮罩可陳述為二進位或 DWORD (十六進位或十進位) 登錄項目。您必須重新啟動 Database Engine 來設定軟體 NUMA。在設定軟體 NUMA 之前,請參閱<瞭解非統一記憶體存取>和<SQL Server 2005 如何支援 NUMA>。

不當編輯登錄可能會造成系統嚴重受損。在變更登錄之前,我們建議您備份電腦上的所有重要資料。

在此範例中,具有八個 CPU 的電腦沒有硬體 NUMA。已設定三個軟體 NUMA 節點。Database Engine 執行個體 A 設定為使用 1 到 4 個 CPU。Database Engine 的第二個執行個體安裝及設定為使用 5 到 8 個 CPU。此範例可以視覺化方式表示如下:

CPUs          1  2  3  4  5  6  7  8

Soft-NUMA   <-N0--><-N1-><----N2---->

SQL Server  <instance A ><instance B>

發生大量 I/O 的執行個體 A,現在有兩個 I/O 執行緒和兩個延遲寫入器執行緒,而執行處理器密集作業的執行個體 B,只有一個 I/O 執行緒和一個延遲寫入器執行緒。不同記憶體數量可指派給執行個體,但與硬體 NUMA 不同,它們都是從相同作業系統記憶體區塊接收記憶體,而沒有記憶體對處理器的相似性。

設定 CPU 相似性遮罩

  1. 對執行個體 A 執行下列陳述式,藉由設定 CPU 相似性遮罩來設定它使用 1、2、3 和 4 個 CPU:

    sp_configure 'show advanced options', 1;
    RECONFIGURE;
    GO
    sp_configure 'affinity mask', 15;
    RECONFIGURE;
    GO
    
  2. 對執行個體 B 執行下列陳述式,藉由設定 CPU 相似性遮罩來設定它使用 5、6、7 和 8 個 CPU:

    sp_configure 'show advanced options', 1;
    RECONFIGURE;
    GO
    sp_configure 'affinity mask', 240;
    RECONFIGURE;
    GO
    
ms345357.note(zh-tw,SQL.90).gif附註:
此範例中的相似性遮罩值套用至具有 32 位元作業系統的電腦。

將軟體 NUMA 節點對應到 CPU

  1. 使用 [登錄編輯器] 程式 (regedit.exe) 及加入下列兩個登錄機碼,將軟體 NUMA 節點 0 對應到 1 和 2 個 CPU,將軟體 NUMA 節點 1 對應到 3 和 4 個 CPU,將軟體 NUMA 節點 2 對應到 5、6、7 和 8 個 CPU:
索引鍵 類型 值名稱 值資料

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\90\NodeConfiguration\Node0

DWORD

CPUMask

0x03

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\90\NodeConfiguration\Node1

DWORD

CPUMask

0x0c

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\90\NodeConfiguration\Node2

DWORD

CPUMask

0xf0

請參閱

工作

如何:將 TCP/IP 通訊埠對應到 NUMA 節點

概念

affinity mask 選項

說明及資訊

取得 SQL Server 2005 協助