Limites de capacité de calcul par l'édition de SQL ServerCompute Capacity Limits by Edition of SQL Server

Cette rubrique traite des limites de capacité de calcul des différentes éditions de SQL Server 2017SQL Server 2017 et de la façon dont elles diffèrent dans les environnements physiques et virtualisés avec les processeurs hyperthreaded.This topic discusses compute capacity limits for different editions of SQL Server 2017SQL Server 2017 and how they differ in physical and virtualized environments with hyperthreaded processors.

Mappages aux limites de capacité de calculMappings to compute capacity limits

Le tableau suivant décrit les notations utilisées dans le schéma ci-dessus :The following table describes the notations being used in the above diagram:

ValeurValue DescriptionDescription
0..10..1 Zéro ou unZero or one
11 Un seulExactly one
1..1.. Un ou plusOne or more
0..0.. Zéro ou plusZero or more
1..21..2 Un ou deuxOne or two
Important

Pour approfondir :To elaborate further:

  1. Un ordinateur virtuel est alloué à un ou plusieurs processeurs virtuels.A virtual machine is allocated one or more virtual processors.

    1. Un ou plusieurs processeurs virtuels sont alloués à un seul ordinateur virtuel.One or more virtual processors are allocated to exactly one virtual machine.
    2. Zéro ou un processeur virtuel est mappé à zéro ou un processeur logique.Zero or one virtual processor is mapped to zero or more logical processors. Lorsque le mappage d'un processeur virtuel à un processeur logique est :When the virtual processor to logical processor mapping is:
    • Un-à-zéro, il représente un processeur logique indépendant non utilisé par les systèmes d'exploitation invités.One-to-zero, it represents an unbound logical processor not used by the guest operating systems.
    • Un-à-plusieurs, il représente un overcommit.One-to-many, it represents an overcommit.
    • Zéro-à-plusieurs, il représente l'absence d'ordinateur virtuel sur le système hôte, de sorte qu'aucun processeur logique n'est utilisé par les VM.Zero-to-many, it represents the absence of virtual machine on the host system, so no logical processors are used by VMs.
    • Un socket est mappé à zéro ou plusieurs noyaux.A socket is mapped to zero or more cores. Lorsque le socket de mappage de noyau est :When the socket to core mapping is:

    • Un-à-zéro, il représente un socket vide (aucun processeur installé).One-to-zero, it represents an empty socket (no chip installed).

    • Un-à-un, il représente un processeur à un noyau installé dans le socket (très rare de nos jours).One-to-one, it represents a single-core chip installed into the socket (very rare these days).
    • Un-à-plusieurs, il représente un processeur à plusieurs noyaux installé dans le socket (les valeurs courantes sont 2,4,8).One-to-many, it represents a multi-core ship installed into the socket (typical values are 2,4,8).
    • Un noyau est mappé à un ou deux processeurs logiques.A core is mapped to one or two logical processors. Lorsque le mappage du noyau au processeur logique est :When the core to logical processor mapping is:

    • Un-à-un, l'hyperthreading est désactivé.One-to-one, hyperthreading is off.

    • Un-à-deux, l'hyperthreading est activé.One-to-two, hyperthreading is on.

Les définitions suivantes s'appliquent aux termes utilisés dans cette rubrique :The following definitions apply to the terms used throughout this topic:

  • Un thread ou un processeur logique est un moteur de calcul logique du point de vue de SQL ServerSQL Server, du système d'exploitation, d'une application ou du pilote.A thread or logical processor is one logical computing engine from the perspective of SQL ServerSQL Server, the operating system, an application or driver.

  • Un noyau est une unité de processeur, qui peut comprendre un ou plusieurs processeurs logiques.A core is a processor unit, which can consist of one or more logical processors.

  • Un processeur physique peut comprendre un ou plusieurs noyaux.A physical processor can consist of one or more cores. Un processeur physique est identique à un package de processeurs ou à un socket.A physical processor is the same as a processor package, or a socket.

    Les systèmes avec plusieurs processeurs physiques ou avec des processeurs physiques qui ont plusieurs noyaux et/ou des hyperthreads, permettent au système d'exploitation d'exécuter plusieurs tâches simultanément.Systems with more than one physical processor or systems with physical processors that have multiple cores and/or hyperthreads enable the operating system to execute multiple tasks simultaneously. Chaque thread d'exécution apparaît comme un processeur logique.Each thread of execution appears as a logical processor. Par exemple, si vous avez un ordinateur qui a deux processeurs quadruple cœur avec des threads activés et deux threads par noyau, vous avez 16 processeurs logiques : 2 processeurs X les 4 cœurs par processeur X 2 thread par cœur.For example, if you have a computer that has two quad-core processors with hyper-threading enabled and two threads per core, you have 16 logical processors: 2 processors x 4 cores per processor x 2 threads per core. Il faut noter que :It is worth noting that:

  • La capacité de calcul d'un processeur logique à partir d'un thread unique d'un noyau hyperthreaded est inférieure à la capacité de calcul d'un processeur logique de ce même noyau avec l'hyperthreading désactivé.The compute capacity of a logical processor from a single thread of a hyperthreaded core is less than the compute capacity of a logical processor from that same core with hyperthreading disabled.

  • Cependant, la capacité de calcul des 2 processeurs logiques dans le noyau hyperthreaded est supérieure à la capacité de calcul du même noyau avec l'hyperthreading désactivé.But the compute capacity of the 2 logical processors in the hyperthreaded core is greater than the compute capacity of the same core with hyperthreading disabled.

    Chaque édition de SQL ServerSQL Server a deux limites de capacité de calcul :Each edition of SQL ServerSQL Server has two compute capacity limits:

  1. Un nombre maximal de sockets (identique au processeur physique ou au socket ou au package de processeurs).A maximum number of sockets (Same as Physical processor or socket or Processor package).

  2. Un nombre maximum de noyaux comme indiqué par le système d'exploitation.A maximum number of cores as reported by the operating system.

    Ces limites s'appliquent à une seule instance de SQL ServerSQL Server.These limits apply to a single instance of SQL ServerSQL Server. Elles représentent la capacité maximale de calcul qu'une seule instance utilise.They represent the maximum compute capacity that a single instance will use. Elles ne limitent pas le serveur sur lequel l'instance peut être déployée.They do not constrain the server upon which the instance may be deployed. En fait, le déploiement de plusieurs instances de SQL ServerSQL 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 noyaux que les limites de capacité ci-dessous.In fact deploying multiple instances of SQL ServerSQL Server on the same physical server is an efficient way to use the compute capacity of a physical server with more sockets and/or cores than the capacity limits below.

    Le tableau suivant présente les limites de capacité de calcul pour une instance unique de chaque édition de SQL Server 2017SQL Server 2017:The following table specifies the compute capacity limits for a single instance of each edition of SQL Server 2017SQL Server 2017:

SQL ServerSQL Server Édition Edition Capacité maximale de calcul utilisée par une instance unique ( SQL ServerSQL Server Moteur de base de donnéesDatabase Engine)Maximum Compute Capacity Used by a Single Instance ( SQL ServerSQL Server Moteur de base de donnéesDatabase Engine) Capacité maximale de calcul utilisée par une instance unique (AS, RS)Maximum Compute Capacity Used by a Single Instance (AS, RS)
Enterprise Edition : contrat de licence selon le nombre de cœursEnterprise Edition: Core-based Licensing Maximum du système d'exploitationOperating system maximum Maximum du système d'exploitationOperating system maximum
DéveloppeurDeveloper Maximum du système d'exploitationOperating system maximum Maximum du système d'exploitationOperating system maximum
StandardStandard Limité à moins de 4 sockets ou 24 cœursLimited to lesser of 4 sockets or 24 cores Limité à moins de 4 sockets ou 24 cœursLimited to lesser of 4 sockets or 24 cores
ExpressExpress Limité à moins de 1 socket ou 4 cœursLimited to lesser of 1 socket or 4 cores Limité à moins de 1 socket ou 4 cœursLimited to lesser of 1 socket or 4 cores

Enterprise Edition avec serveur + licences d’accès client (CAL) (non disponibles pour les nouveaux contrats) limitées à un maximum de 20 cœurs par instance SQL ServerSQL Server .Enterprise Edition with Server + Client Access License (CAL) based licensing (not available for new agreements) is limited to a maximum of 20 cores per SQL ServerSQL Server instance. Il n'existe aucune limite dans le mode de licence Serveur selon le nombre de cœurs.There are no limits under the Core-based Server Licensing model.

Dans un environnement virtualisé, la limite de capacité de calcul est basée sur le nombre de processeurs logiques et non de noyaux, car l'architecture du processeur n'est pas visible aux applications invitées.In a virtualized environment, the compute capacity limit is based on the number of logical processors, not cores, because the processor architecture is not visible to the guest applications. Par exemple, un serveur avec quatre sockets comprenant des processeurs quadruple cœur et autorisant l'activation de deux hyperthreads par cœur, contient 32 processeurs logiques avec l'hyperthreading activé mais seulement 16 processeurs logiques avec l'hyperthreading désactivé.For example, a server with four sockets populated with quad-core processors and the ability to enable two hyperthreads per core contains 32 logical processors with hyperthreading enabled but only 16 logical processors with hyperthreading disabled. Ces processeurs logiques peuvent être mappés aux ordinateurs virtuels sur le serveur avec la charge du calcul des ordinateurs virtuels, sur ce processeur logique mappé sur un thread d'exécution sur le processeur physique dans le serveur hôte.These logical processors can be mapped to virtual machines on the server with the virtual machines’ compute load on that logical processor mapped into a thread of execution on the physical processor in the host server.

Vous pouvez désactiver l'hyperthreading lorsque les performances par processeur virtuel sont importantes.You may want to disable hyperthreading when the performance per virtual processor is important. Vous pouvez activer ou désactiver l'hyperthreading sur le processeur à l'aide d'un paramètre du BIOS pendant l'installation de celui-ci, mais il s'agit en général d'une opération couvrant l'étendue du serveur qui aura un impact sur toutes les charges de travail qui s'exécutent sur le serveur.One can enable or disable hyperthreading using a BIOS setting for the processor during the BIOS setup, but it is typically a server scoped operation that will impact all workloads running on the server. On peut dans ce cas suggérer la séparation des charges de travail qui s'exécutent dans des environnements virtualisés de celles qui tirent parti de l'amélioration des performances grâce à l'hyperthreading dans un environnement de système d'exploitation physique.This may suggest separating workloads that will run in virtualized environments from those that would benefit from the hyperthreading performance boost in a physical operating system environment.

Voir aussiSee Also

Éditions et composants de SQL Server 2016 Editions and Components of SQL Server 2016
Fonctionnalités prises en charge par les éditions de SQL Server 2016 Features Supported by the Editions of SQL Server 2016
Spécifications des capacités maximales pour SQL Server Maximum Capacity Specifications for SQL Server
Installation de démarrage rapide de SQL Server 2016 Quick-Start Installation of SQL Server 2016