Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Imposta MAXDOP per prestazioni ottimali
Il massimo grado di parallelismo (MAXDOP) è un'opzione di configurazione del server per l'esecuzione di SQL Server su più CPU. Controlla il numero di processori utilizzati per eseguire una singola istruzione nell'esecuzione parallela del piano. Il valore predefinito è 0, che consente a SQL Server di utilizzare tutti i processori disponibili. Ciò può influire sulle prestazioni e non è ottimale per la maggior parte dei casi d'uso.
Utilizza le seguenti linee guida per configurare il valore MAXDOP per SQL Server.
Nodi NUMA | Processori logici | Valore MAXDOP |
---|---|---|
Singolo | ≤ 8 | 4, 2 o numero di core (per uno o due core) |
Singolo | > 8 | 8, 4 o 2 |
Più di uno | ≤ 16 | 8, 4 o 2 |
Più di uno | > 16 | 16, 8, 4 o 2 |
Nota
L'impostazione di MAXDOP su 2, 4 o 8 in genere fornisce i migliori risultati nella maggior parte dei casi d'uso. Ti consigliamo di testare il carico di lavoro e di monitorare eventuali tipi di attesa legati al parallelismo, ad esempioCXPACKET
.
È possibile utilizzare la seguente query per raccogliere la configurazione NUMA corrente per SQL Server 2016 e versioni successive:
select @@SERVERNAME, SERVERPROPERTY('ComputerNamePhysicalNetBIOS'), cpu_count, hyperthread_ratio, softnuma_configuration, softnuma_configuration_desc, socket_count, numa_node_count from sys.dm_os_sys_info
dove:
-
cpu_count
si riferisce al numero di CPU logiche nel sistema. -
hyperthread_ratio
è il rapporto tra il numero di core esposti da un processore fisico. -
softnuma_configuration
è0
,1
, oppure2
:-
0 (OFF)
: impostazione predefinita -
1 (automated)
: Soft-Numa -
2 (manual)
: Soft-Numa
-
-
softnuma_configuration_desc
èOFF
,ON
, oppureMANUAL
:-
OFF
indica che la funzione soft-NumA è disattivata. -
ON
indica che SQL Server decide automaticamente le dimensioni dei nodi NUMA. -
MANUAL
indica che soft-numA è configurato manualmente.
-
-
socket_count
è il numero di socket del processore. -
numa_node_count
è il numero di nodi NUMA disponibili nel sistema.
Per verificare il valore MAXDOP corrente, utilizzare:
$ sp_configure 'max_degree_of_parallelism'
Per ulteriori informazioni su MAXDOP, vedereDocumentazione Microsoft SQL Server