La procédure sp_configure permet de régler les principaux paramètres pour piloter la gestion des processeurs. De plus le tag MAXDOP permet de limiter l’usage de plusieurs processeurs. Nous avons vu que SQL Server utilisait peu l’OS puisqu’il utilise son propre OS "SQL OS". Nous en avions déduit que contrairement à
4.3 – Réglages au niveau des processeurs
d’autres applications (IIS par exemple) il était parfaitement logique d’assigner 3/4 des ressources RAM à SQL Server et 1/4 à l’OS (swith /3GB dans le fichier boot.ini). Il en est de même pour les processeurs.
SQL Server installé sur une machine dédiée n’a besoin que de 75 % des processeurs physiques. Ainsi, à partir du quadri processeur, il est intéressant de dédier à SQL Server, certains processeurs pour laisser les autres à disposition de l’OS. La répartition de fait à l’aide du paramètre "affinity mask" de la procédure stockée sp_configure. Un masque d’affinité est une combinaison de bits qui indique par un 1 si le processeur de rang n est utilisé par SQL Server, sinon à 0 c’est l’OS qui l’utilisera. Ainsi pour indiquer à SQL Server que les processeurs 0, 1 et 2 lui sont réservés (et que par conséquent le processeur 3 sur un système quadri est utilisé par l’OS) alors il faut donner au paramètre "affinity mask" la valeur 7 obtenue par la somme de 20 + 21 + 22. Attention : dédiez toujours les processeurs de poids faible (0, 1, 2…) à SQL Server et ceux de poids forts (… n-2, n-1, n) à l’OS. En effet, le processeur de poids le plus fort est la plupart du temps utilisé par les cartes réseaux. Or c’est la seule action que SQL dédie à l’OS !
Même si vous avez dédié à SQL Server 6 processeurs sur 8, vous pouvez exiger qu’aucune requête ne prenne plus de 4 processeurs par exemple. Cela fluidifiera les petites requêtes au détriment du temps de réponse des grosses. C’est possible à l’aide du paramètre "max degree of parallelism" modifiable par la procédure stockée sp_configure. Vous pouvez aussi définir le coût minimum18 à partir duquel le parallélisme va entrer en jeu. C’est le paramètre "cost threshold for parallelism" de la même procédure. N’oubliez pas qu’un traitement parallèle engendre un travail plus important qu’en série. Il y a donc gain sur la durée, mais perte sur la consommation des ressources. Enfin, le tag MAXDOP peut être utilisé dans une requête pour lui indiquer de ne pas utiliser plus de n processeurs pour être traité. Cela se fait dans la clause OPTION de la requête, clause spécifique à SQL Server.
Téléchargez cette ressource
SIEM & PME : Comment construire la boîte noire de votre SI ?
Passez à la cybersécurité proactive, transformez la collecte et l’analyse des logs en un bouclier dynamique contre les cybermenaces. Découvrez comment mettre en place une approche SIEM modulaire, évolutive et accessible, pour anticiper, détecter et réagir efficacement aux attaques.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Data streaming : le nouveau socle stratégique de l’IA en entreprise
- Ransomware en santé : la double extorsion fait exploser la facture en Europe
- Les fuites de données explosent en France, désormais pays le plus touché d’Europe
- L’IA accélère les attaques et expose les identités non gouvernées
Articles les + lus
Model Context Protocol : le contexte, grand oublié du débat
Microsoft dévoile MAI-Thinking-1 : un modèle de raisonnement « enterprise-grade » en preview publique
Couchbase lance AI Data Plane pour industrialiser l’IA agentique
Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
Computex 2026 : 5 signaux forts à retenir
À la une de la chaîne Tech
- Model Context Protocol : le contexte, grand oublié du débat
- Microsoft dévoile MAI-Thinking-1 : un modèle de raisonnement « enterprise-grade » en preview publique
- Couchbase lance AI Data Plane pour industrialiser l’IA agentique
- Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
- Computex 2026 : 5 signaux forts à retenir
