Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cette rubrique traite des limites de capacité de calcul pour différentes éditions de SQL Server 2014 et explique comment elles diffèrent dans les environnements physiques et virtualisés avec des processeurs hyperthread.
Le tableau suivant décrit les notations utilisées dans le diagramme ci-dessus :
| Valeur | Descriptif |
|---|---|
| 0..1 | Zéro ou un |
| 1 | Un seul |
| 1..* | Un ou plus |
| 0..* | Zéro ou plus |
| 1..2 | Une ou deux |
Important
Pour approfondir :
Une machine virtuelle est allouée à un ou plusieurs processeurs virtuels.
Un ou plusieurs processeurs virtuels sont alloués à un seul ordinateur virtuel.
Zéro ou un processeur virtuel est mappé à zéro ou un processeur logique. Lorsque le mappage du processeur virtuel vers le processeur logique est :
- Un-à-zéro, il représente un processeur logique non lié non utilisé par les systèmes d’exploitation invités.
- Un-à-plusieurs, il représente un surcommit.
- Zéro à plusieurs, il représente l’absence de machine virtuelle sur le système hôte, donc aucun processeur logique n’est utilisé par les machines virtuelles.
Un socket est mappé à zéro ou plusieurs noyaux. Lorsque le mappage de socket à cœur est le suivant :
- Un-à-zéro, il représente un socket vide (aucune puce installée).
- Individuellement, il représente une puce à un seul cœur installée dans le socket (très rare ces jours-ci).
- Un-à-plusieurs, il représente un navire multicœur installé dans le socket (les valeurs classiques sont 2,4,8).
Un noyau est mappé à un ou deux processeurs logiques. Lorsque le mappage du cœur au processeur logique est le suivant :
- Un-à-un, l’hyperthreading est désactivé.
- Un-à-deux, hyperthreading est activé.
Les définitions suivantes s’appliquent aux termes utilisés dans cette rubrique :
Un processeur logique ou thread est un moteur de calcul logique du point de vue de SQL Server, du système d’exploitation, d’une application ou d’un pilote.
Un cœur est une unité de processeur, qui peut se composer d’un ou plusieurs processeurs logiques.
Un processeur physique peut comprendre un ou plusieurs noyaux. Un processeur physique est identique à un package de processeur ou à un socket.
Les systèmes avec plusieurs processeurs physiques ou systèmes avec des processeurs physiques qui ont plusieurs cœurs et/ou hyperthreads permettent au système d’exploitation d’exécuter plusieurs tâches simultanément. Chaque thread d'exécution apparaît comme un processeur logique. Par exemple, si vous avez un ordinateur doté de deux processeurs à quatre cœurs avec hyperthreading activé et deux threads par cœur, vous avez 16 processeurs logiques : 2 processeurs x 4 cœurs par processeur x 2 threads par cœur. Il vaut la peine de noter que :
La capacité de calcul d’un processeur logique à partir d’un seul thread d’un cœur hyperthread est inférieure à la capacité de calcul d’un processeur logique de ce même cœur avec l’hyperthreading désactivé.
Toutefois, la capacité de calcul des 2 processeurs logiques dans le cœur hyperthread est supérieure à la capacité de calcul du même cœur avec l’hyperthreading désactivée.
Chaque édition de SQL Server a deux limites de capacité de calcul :
Nombre maximal de sockets (identique au processeur physique, au socket ou au package processeur).
Nombre maximal de cœurs, comme indiqué par le système d’exploitation.
Ces limites s'appliquent à une seule instance de SQL Server. Ils représentent la capacité de calcul maximale qu’une seule instance utilisera. Ils ne limitent pas le serveur sur lequel l’instance peut être déployée. En fait, le déploiement de plusieurs instances de SQL Server sur le même serveur physique est un moyen efficace d’utiliser la capacité de calcul d’un serveur physique avec plus de sockets et/ou de cœurs que les limites de capacité ci-dessous.
Le tableau suivant spécifie les limites de capacité de calcul pour une seule instance de chaque édition de SQL Server 2014 :
| Édition de SQL Server | Capacité de calcul maximale utilisée par une instance unique (moteur SQL ServerDatabase) | Capacité de calcul maximale utilisée par une instance unique (AS, RS) |
|---|---|---|
| Édition Entreprise : Licences de base1 | Maximum du système d'exploitation | Maximum du système d'exploitation |
| Développeur | Maximum du système d'exploitation | Maximum du système d'exploitation |
| Évaluation | Maximum du système d'exploitation | Maximum du système d'exploitation |
| Informatique décisionnelle | Limité à moins de 4 sockets ou 16 cœurs | Maximum du système d'exploitation |
| Norme | Limité à moins de 4 sockets ou 16 cœurs | Limité à moins de 4 sockets ou 16 cœurs |
| Le Web | Limité à moins de 4 sockets ou 16 cœurs | Limité à moins de 4 sockets ou 16 cœurs |
| Exprimer | Limité à moins de 1 socket ou 4 cœurs | Limité à moins de 1 socket ou 4 cœurs |
| Express with Tools | Limité à moins de 1 socket ou 4 cœurs | Limité à moins de 1 socket ou 4 cœurs |
| Service Express avec Services Avancés | Limité à moins de 1 socket ou 4 cœurs | Limité à moins de 1 socket ou 4 cœurs |
1 L’édition Enterprise avec serveur + licences d’accès client (CAL) (non disponibles pour les nouveaux contrats) est limitée à un maximum de 20 cœurs par instance SQL Server. Il n'existe aucune limite dans le mode de licence Serveur selon le nombre de cœurs.
Dans un environnement virtualisé, la limite de capacité de calcul est basée sur le nombre de processeurs logiques, et non sur les cœurs, car l’architecture du processeur n’est pas visible pour les applications invitées. Par exemple, un serveur avec quatre sockets équipés de processeurs quad-cœurs et la possibilité d’activer deux hyperthreads par cœur contient 32 processeurs logiques avec hyperthreading activé, mais seulement 16 processeurs logiques avec hyperthreading désactivé. Ces processeurs logiques peuvent être mappés à des machines virtuelles sur le serveur avec la charge de calcul des machines virtuelles sur ce processeur logique mappé dans un thread d’exécution sur le processeur physique du serveur hôte.
Vous pouvez désactiver l’hyperthreading lorsque les performances par processeur virtuel sont importantes. Vous pouvez activer ou désactiver l’hyperthreading à l’aide d’un paramètre BIOS pour le processeur pendant la configuration du BIOS, mais il s’agit généralement d’une opération délimitée par le serveur qui aura un impact sur toutes les charges de travail en cours d’exécution sur le serveur. Cela peut suggérer de séparer les charges de travail qui s’exécuteront dans des environnements virtualisés de ceux qui bénéficieraient de l’augmentation des performances d’hyperthreading dans un environnement de système d’exploitation physique.
Voir aussi
Éditions et composants de SQL Server 2014
Fonctionnalités prises en charge par les éditions de SQL Server 2014
Spécifications de capacité maximale pour SQL Server
Quick-Start Installation de SQL Server 2014