Procedura: Configurazione di SQL Server per l'utilizzo di Soft-NUMA
Data creazione: 5 dicembre 2005
Per configurare SQL Server per l'utilizzo di Soft-NUMA (Software Non-Uniform Memory Access), è necessario modificare il Registro di sistema per aggiungere una maschera di affinità di configurazione dei nodi. La maschera Soft-NUMA può essere dichiarata come voce del Registro di sistema binaria o DWORD (esadecimale o decimale). È necessario riavviare Motore di database per configurare Soft-NUMA. Prima di configurare Soft-NUMA, vedere Informazioni sull'architettura NUMA (Non-Uniform Memory Access) e Modifiche che consentono il supporto NUMA in SQL Server 2005.
Se il Registro di sistema viene modificato in modo non appropriato, è possibile che il sistema risulti gravemente danneggiato. Prima di modificare il Registro di sistema, è consigliabile eseguire il backup di tutti i dati importanti presenti nel computer.
In questo esempio, un computer con otto CPU non dispone di NUMA hardware. Sono configurati tre nodi Soft-NUMA. L'istanza A di Motore di database è configurata per l'utilizzo delle CPU da 1 a 4. Una seconda istanza di Motore di database è installata e configurata per utilizzare le CPU da 5 a 8. Nella figura seguente viene illustrato visivamente l'esempio:
CPUs 1 2 3 4 5 6 7 8
Soft-NUMA <-N0--><-N1-><----N2---->
SQL Server <instance A ><instance B>
L'istanza A che presenta un I/O significativo, ha ora due thread di I/O e due thread Lazywriter mentre l'istanza B che esegue operazioni con utilizzo elevato del processore ha solo un thread di I/O e un thread Lazywriter. È possibile assegnare alle istanze diverse quantità di memoria ma, a differenza di quanto avviene in NUMA hardware, entrambe le istanze ricevono memoria dallo stesso blocco di memoria del sistema operativo e non è presente affinità tra memoria e processore.
Impostazione della maschera di affinità della CPU
Eseguire l'istruzione seguente sull'istanza A per configurarla per l'utilizzo delle CPU 1, 2, 3 e 4 impostando la maschera di affinità della CPU:
sp_configure 'show advanced options', 1; RECONFIGURE; GO sp_configure 'affinity mask', 15; RECONFIGURE; GO
Eseguire l'istruzione seguente sull'istanza B per configurarla per l'utilizzo delle CPU 5, 6, 7 e 8 impostando la maschera di affinità della CPU:
sp_configure 'show advanced options', 1; RECONFIGURE; GO sp_configure 'affinity mask', 240; RECONFIGURE; GO
[!NOTA] Il valore della maschera di affinità riportato nell'esempio si applica a un computer con un sistema operativo a 32 bit.
Mapping dei nodi Soft-NUMA alle CPU
- Mediante l'Editor del Registro di sistema (regedit.exe) aggiungere le due chiavi del Registro di sistema seguenti per eseguire il mapping del nodo Soft-NUMA 0 alle CPU 1 e 2, del nodo Soft-NUMA 1 alle CPU 3 e 4 e del nodo Soft-NUMA 2 alle CPU 5, 6, 7 e 8:
Chiave | Tipo | Nome del valore | Dati del valore |
---|---|---|---|
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 |
Vedere anche
Attività
Procedura: Mapping delle porte TCP/IP ai nodi NUMA