Configurer cost threshold for parallelism (option de configuration de serveur)

S’applique à :SQL Server

Cette rubrique explique la procédure de configuration de l’option « configuration de serveur » cost threshold for parallelism dans SQL Server à l’aide de SQL Server Management Studio ou de Transact-SQL. L'option cost threshold for parallelism spécifie le seuil de création et d'exécution des plans parallèles par SQL Server . SQL Server crée et exécute un plan parallèle pour une requête uniquement lorsque le coût estimé de l'exécution d'un plan en série pour la même requête est supérieur à la valeur définie dans Seuil de coût pour le parallélisme. Ce coût est une estimation pour l’exécution du plan de série sur une configuration matérielle spécifique. Ce n’est pas une unité de temps. L'option cost threshold for parallelism peut prendre toute valeur comprise entre 0 et 32 767.

Limites

Ce coût est une unité de coût abstraite et non une unité de temps estimé. Spécifiez cost threshold for parallelism uniquement sur des multiprocesseurs symétriques.

SQL Server ignore la valeur de l'option cost threshold for parallelism dans les conditions suivantes :

  • L'ordinateur ne dispose que d'un seul processeur logique.

  • Un seul processeur logique est disponible pour SQL Server en raison de l’option de configuration affinity mask .

  • L'option de degré maximal de parallélisme max degree of parallelism a la valeur 1.

Un processeur logique correspond à l'unité de base d'un processeur qui permet au système d'exploitation de distribuer une tâche ou d'exécuter un contexte de thread. Chaque processeur logique peut exécuter uniquement un contexte de thread à la fois. Le noyau du processeur désigne le circuit qui permet de décoder et d'exécuter des instructions. Un noyau de processeur peut contenir un ou plusieurs processeurs logiques. La requête Transact-SQL suivante peut être utilisée pour obtenir les informations du processeur pour le système.

SELECT (cpu_count / hyperthread_ratio) AS PhysicalCPUs,
    cpu_count AS logicalCPUs
FROM sys.dm_os_sys_info;

Recommandations

  • Seul un administrateur de base de données qualifié ou un spécialiste agréé doit changer cette option avancée SQL Server.

  • Dans certains cas, un plan parallèle peut être choisi, même si le plan de coût de la requête est inférieur à la valeur actuelle de l'option Seuil de coût pour le parallélisme . Cela s’explique par le fait que la décision d’utiliser un plan parallèle ou un plan en série est basée sur une estimation de coût fournie au début du processus d’optimisation. Pour plus d’informations, consultez le Guide d’architecture de traitement des requêtes.

  • Bien que la valeur par défaut de 5 soit adéquate pour la plupart des systèmes, une valeur différente peut être appropriée. Effectuez des tests d’application avec des valeurs supérieures et inférieures si nécessaire, afin d’optimiser les performances de l’application.

Autorisations

Les autorisations d’exécution de sp_configure , sans paramètre ou avec le premier paramètre uniquement, sont accordées par défaut à tous les utilisateurs. Pour exécuter sp_configure avec les deux paramètres afin de modifier une option de configuration ou d’exécuter l’instruction RECONFIGURE, un utilisateur doit disposer de l’autorisation de niveau serveur ALTER SETTINGS. L'autorisation ALTER SETTINGS est implicitement détenue par les rôles serveur fixes sysadmin et serveradmin .

Utiliser SQL Server Management Studio

  1. Dans l’Explorateur d’objets, cliquez avec le bouton droit sur un serveur et sélectionnez Propriétés.

  2. Cliquez sur le nœud Avancé.

  3. Sous Parallélisme, remplacez l’option Seuil de coût pour le parallélisme par la valeur souhaitée. Tapez ou sélectionnez une valeur comprise entre 0 et 32 767.

Utiliser Transact-SQL

Cet exemple montre comment utiliser sp_configure pour attribuer à l’option cost threshold for parallelism la valeur 10.

USE master;
GO
EXEC sp_configure 'show advanced options', 1;
GO
RECONFIGURE
GO
EXEC sp_configure 'cost threshold for parallelism', 10;
GO
RECONFIGURE
GO

Pour plus d’informations, consultez Options de configuration de serveur (SQL Server).

Suivi : Après avoir configuré l'option Seuil de coût pour le parallélisme

Le paramètre prend effet immédiatement sans redémarrage du serveur.