Opzione max degree of parallelism

Quando SQL Server 2005 viene eseguito in un computer con più microprocessori o CPU, viene automaticamente rilevato il grado di parallelismo migliore, ovvero il numero di processori utilizzati per eseguire una singola istruzione per l'esecuzione di ogni piano parallelo. È possibile utilizzare l'opzione max degree of parallelism per limitare il numero di processori da utilizzare nell'esecuzione di piani paralleli. Il valore predefinito 0 comporta l'utilizzo di tutti i processori disponibili. Impostare max degree of parallelism su 1 per evitare la creazione di piani paralleli. Impostare il valore su un numero maggiore di 1, fino a un massimo di 64, per limitare il numero massimo di processori utilizzati per l'esecuzione di una singola query. Se viene specificato un valore maggiore di quello dei processori disponibili, verrà utilizzato il numero effettivo di processori disponibili. Se il computer dispone di un unico processore, il valore di max degree of parallelism viene ignorato.

Sostituzione del valore di max degree of parallelism

SQL Server valuta i piani di esecuzione parallela per le query, le operazioni DLL (Data Definition Language) sugli indici e il popolamento dei cursori statici e gestiti da keyset. Per ulteriori informazioni sull'esecuzione parallela, vedere Grado di parallelismo.

È possibile sostituire il valore di max degree of parallelism nelle query specificando l'hint per la query MAXDOP nell'istruzione per la query. Per ulteriori informazioni, vedere query_hint (Transact-SQL).

Le operazioni tramite cui viene creato o ricostruito un indice o eliminato un indice cluster possono richiedere un elevato utilizzo di risorse. È possibile sostituire il valore di max degree of parallelism per le operazioni sugli indici specificando l'opzione per gli indici MAXDOP nell'istruzione per l'indice. Il valore MAXDOP viene applicato all'istruzione al momento dell'esecuzione e non viene archiviato nei metadati dell'indice. Per ulteriori informazioni, vedere Configurazione di operazioni a indici paralleli.

Oltre al parallelismo delle query e delle operazioni sugli indici, questa opzione controlla anche il parallelismo dei controlli DBCC CHECKTABLE, DBCC CHECKDB e DBCC CHECKFILEGROUP. È possibile disattivare i piani di esecuzione parallela per tali istruzioni utilizzando il flag di traccia 2528. Per ulteriori informazioni, vedere Flag di traccia (Transact-SQL).

[!NOTA] Se l'opzione affinity mask non è impostata sul valore predefinito, il numero di processori disponibili per SQL Server in sistemi SMP (multiprocessori simmetrici, Symmetric Multiprocessor) potrebbe risultare ridotto.

Impostazione dell'opzione max degree of parallelism

max degree of parallelism è un'opzione avanzata. Se si utilizza la stored procedure di sistema sp_configure per modificare l'impostazione, è possibile modificare max degree of parallelism solo quando il valore di show advanced options è impostato su 1. L'impostazione diventa effettiva immediatamente e non richiede il riavvio del servizio MSSQLSERVER.

Nell'esempio seguente l'opzione max degree of parallelism è impostata su 8.

sp_configure 'show advanced options', 1;
GO
RECONFIGURE WITH OVERRIDE;
GO
sp_configure 'max degree of parallelism', 8;
GO
RECONFIGURE WITH OVERRIDE;
GO

Per ulteriori informazioni sull'impostazione del valore dell'opzione max degree of parallelism in SQL Server Management Studio, vedere Procedura: Configurazione del numero di processori disponibili per query parallele (SQL Server Management Studio).

Vedere anche

Concetti

Opzione affinity mask
Opzione cost threshold for parallelism
Impostazione delle opzioni di configurazione del server
Elaborazione parallela di query
Configurazione di operazioni a indici paralleli
Impostazione delle opzioni di un indice
Opzione max worker threads

Altre risorse

RECONFIGURE (Transact-SQL)
sp_configure (Transact-SQL)
CREATE INDEX (Transact-SQL)
ALTER INDEX (Transact-SQL)
ALTER TABLE (Transact-SQL)
DBCC CHECKTABLE (Transact-SQL)
DBCC CHECKDB (Transact-SQL)
DBCC CHECKFILEGROUP (Transact-SQL)
query_hint (Transact-SQL)

Guida in linea e informazioni

Assistenza su SQL Server 2005