Limiti della capacità di calcolo per edizione di SQL ServerCompute capacity limits by edition of SQL Server

QUESTO ARGOMENTO SI APPLICA A: SìSQL ServernonDatabase SQL di AzurenonAzure SQL Data Warehouse non Parallel Data WarehouseTHIS TOPIC APPLIES TO: yesSQL ServernoAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

Questo articolo illustra i limiti della capacità di calcolo per diverse edizioni di SQL Server 2017SQL Server 2017 e le differenze in ambienti fisici e virtualizzati con processori dotati di Hyper-Threading.This article discusses compute capacity limits for editions of SQL Server 2017SQL Server 2017 and how they differ in physical and virtualized environments with hyperthreaded processors.

Mapping per il calcolo dei limiti della capacitàMappings to compute capacity limits

Questa tabella descrive le notazioni nel diagramma precedente:This table describes the notations in the preceding diagram:

valoreValue DescrizioneDescription
0..10..1 Zero o unoZero or one
11 Esattamente unoExactly one
1..*1..* Uno o piùOne or more
0..*0..* Zero o piùZero or more
1..21..2 Uno o dueOne or two

Importante

Per un'ulteriore elaborazione:To elaborate further:

  • Una macchina virtuale dispone di uno o più processori virtuali.A virtual machine (VM) has one or more virtual processors.
  • Uno o più processori virtuali sono allocati a esattamente una macchina virtuale.One or more virtual processors are allocated to exactly one virtual machine.
  • Viene eseguito il mapping a zero o più processori logici di zero o un processore virtuale.Zero or one virtual processor is mapped to zero or more logical processors. Quando il mapping dei processori virtuali al processore logico è:When the mapping of virtual processors to logical processors is:
    • Uno a zero, rappresenta un processore logico non associato non usato dai sistemi operativi guest.One to zero, it represents an unbound logical processor not used by the guest operating systems.
    • Uno a molti, rappresenta un overcommit.One to many, it represents an overcommit.
    • Zero a molti, rappresenta l'assenza di una macchina virtuale sul sistema host.Zero to many, it represents the absence of virtual machine on the host system. Di conseguenza le macchine virtuali non usano alcun processore logico.So VMs don't use any logical processors.
  • Viene eseguito il mapping di un socket a zero o a più core.A socket is mapped to zero or more cores. Quando il mapping da socket a core è:When the socket-to-core mapping is:
    • Uno a zero, rappresenta un socket vuoto.One to zero, it represents an empty socket. Non è installato nessun chip.No chip is installed.
    • Uno a uno, rappresenta un chip single core installato nel socket.One to one, it represents a single-core chip installed in the socket. Questo mapping è ormai raro.This mapping is rare these days.
    • Uno a molti, rappresenta un chip multi-core installato nel socket.One to many, it represents a multi-core chip installed in the socket. I valori tipici sono 2, 4 e 8.Typical values are 2, 4, and 8.
  • Viene eseguito il mapping di un core a uno o due processori logici.A core is mapped to one or two logical processors. Quando il mapping dei core ai processore logici è:When the mapping of cores to logical processors is:
    • Uno a uno, l'Hyper-Threading è disabilitato.One to one, hyperthreading is off.
    • Uno a due, l'Hyper-Threading è abilitato.One to two, hyperthreading is on.

Le definizioni seguenti si riferiscono ai termini usati in questo articolo:The following definitions apply to the terms used in this article:

  • Un thread o processore logico è un motore di calcolo logico dalla prospettiva di SQL ServerSQL Server, del sistema operativo, di un'applicazione o un driver.A thread or logical processor is one logical computing engine from the perspective of SQL ServerSQL Server, the operating system, an application, or a driver.

  • Un core è un'unità del processore.A core is a processor unit. Può essere costituito da uno o più processori logici.It can consist of one or more logical processors.

  • Un processore fisico può essere costituito da uno o più core.A physical processor can consist of one or more cores. Un processore fisico corrisponde a un pacchetto del processore o a un socket.A physical processor is the same as a processor package or a socket.

Sistemi con più processori fisici o sistemi con processori fisici che dispongono di più core e/o Hyper-thread consentono al sistema operativo di eseguire più attività simultaneamente.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. Ogni thread di esecuzione viene visualizzato come un processore logico.Each thread of execution appears as a logical processor. Se ad esempio il computer in uso dispone di due processori quad core con l'Hyper-Threading abilitato e due thread per core, sono presenti 16 processori logici: 2 processori x 4 core per processore x 2 thread per core.For example, if your computer has two quad-core processors with hyperthreading enabled and two threads per core, you have 16 logical processors: 2 processors x 4 cores per processor x 2 threads per core. Si noti che:It's worth noting that:

  • La capacità di calcolo di un processore logico da un solo thread di un core con l'Hyper-Threading è inferiore alla capacità di calcolo di un processore logico da quello stesso core con l'Hyper-Threading disabilitato.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.

  • La capacità di calcolo dei 2 processori logici nel core con l'Hyper-Threading è maggiore della capacità di calcolo dello stesso core con l'Hyper-Threading disabilitato.The compute capacity of the two logical processors in the hyperthreaded core is greater than the compute capacity of the same core with hyperthreading disabled.

Ogni edizione di SQL ServerSQL Server dispone di due limiti di capacità di calcolo:Each edition of SQL ServerSQL Server has two compute capacity limits:

  • Un numero massimo di socket (o processori fisici o pacchetti del processore).A maximum number of sockets (or physical processors or processor packages)

  • Un numero massimo di core come riportato dal sistema operativo.A maximum number of cores as reported by the operating system

Questi limiti si applicano a una sola istanza di SQL ServerSQL Server.These limits apply to a single instance of SQL ServerSQL Server. Rappresentano la capacità di calcolo massima che verrà utilizzata da una sola istanza.They represent the maximum compute capacity that a single instance will use. Non vincolano il server sul quale potrebbe essere distribuita l'istanza.They do not constrain the server where the instance may be deployed. In realtà la distribuzione di più istanze di SQL ServerSQL Server sullo stesso server fisico è un modo efficiente per usare la capacità di calcolo di un server fisico con più socket e/o core di quelli consentiti dai limiti di capacità.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 allow.

Nella tabella seguente vengono specificati i limiti della capacità di calcolo per una sola istanza di ogni edizione di 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:

Edizione di SQL ServerSQL Server SQL ServerSQL Server edition Capacità di calcolo massima per una singola istanza ( SQL ServerSQL Server Motore di databaseDatabase Engine)Maximum compute capacity for a single instance ( SQL ServerSQL Server Motore di databaseDatabase Engine) Capacità di calcolo massima per una singola istanza (AS, RS)Maximum compute capacity for a single instance (AS, RS)
Enterprise Edition: licenze basate su core*Enterprise Edition: Core-based Licensing* Valore massimo del sistema operativoOperating system maximum Valore massimo del sistema operativoOperating system maximum
DeveloperDeveloper Valore massimo del sistema operativoOperating system maximum Valore massimo del sistema operativoOperating system maximum
StandardStandard Limitato a meno di 4 socket o 24 coreLimited to lesser of 4 sockets or 24 cores Limitato a meno di 4 socket o 24 coreLimited to lesser of 4 sockets or 24 cores
ExpressExpress Limitato a meno di 1 socket o 4 coreLimited to lesser of 1 socket or 4 cores Limitato a meno di 1 socket o 4 coreLimited to lesser of 1 socket or 4 cores

*La licenza Enterprise Edition con Server + Licenza CAL (Client Access License) è limitata a un massimo di 20 core per istanza di SQL ServerSQL Server.*Enterprise Edition with Server + Client Access License (CAL) licensing is limited to 20 cores per SQL ServerSQL Server instance. Questo tipo di licenza non è disponibile per nuovi contratti. Non sono previsti limiti nel modello di licenza server basato su core.(This licensing is not available for new agreements.) There are no limits under the Core-based Server Licensing model.

In un ambiente virtualizzato, il limite di capacità di calcolo è basato sul numero di processori logici e non sul numero di core.In a virtualized environment, the compute capacity limit is based on the number of logical processors, not cores. Il motivo è che l'architettura del processore non è visibile alle applicazioni guest.The reason is that the processor architecture is not visible to the guest applications.

Ad esempio, un server con quattro socket popolati con processori quad-core e la capacità di abilitare due Hyper-Thread per core contiene 32 processori logici con l'Hyper-Threading abilitato.For example, a server that has four sockets populated with quad-core processors and the ability to enable two hyperthreads per core contains 32 logical processors with hyperthreading enabled. Tuttavia contiene solo 16 processori logici con l'Hyper-Threading disabilitato.But it contains only 16 logical processors with hyperthreading disabled. Questi processori logici possono essere mappati su macchine virtuali nel server.These logical processors can be mapped to virtual machines on the server. Il carico di calcolo delle macchine virtuali sul processore logico viene mappato su un thread di esecuzione nel processore fisico del server host.The virtual machines’ compute load on that logical processor is mapped to a thread of execution on the physical processor in the host server.

Può risultare utile disabilitare l'Hyper-Threading quando le prestazioni per processore virtuale sono importanti.You might want to disable hyperthreading when the performance for each virtual processor is important. È possibile abilitare o disabilitare l'Hyper-Threading usando un'impostazione BIOS per il processore durante la configurazione del BIOS.You can enable or disable hyperthreading by using a BIOS setting for the processor during the BIOS setup. Tuttavia questa operazione è in genere di ambito server e ha effetto su tutti i carichi di lavoro in esecuzione nel server.But it's typically a server-scoped operation that will affect all workloads running on the server. In tale situazione potrebbe essere consigliabile dividere i carichi di lavoro che saranno in esecuzione negli ambienti virtualizzati da quelli che beneficeranno del miglioramento delle prestazioni dell'Hyper-Threading in un ambiente del sistema operativo fisico.This might suggest separating workloads that will run in virtualized environments from workloads that would benefit from the hyperthreading performance boost in a physical operating system environment.

Vedere ancheSee also

Edizioni e componenti di SQL Server 2016 Editions and components of SQL Server 2016
Funzionalità supportate dalle edizioni di SQL Server 2016 Features supported by the editions of SQL Server 2016
Specifiche di capacità massima per SQL Server Maximum capacity specifications for SQL Server
Guida introduttiva all'installazione di SQL Server 2016Quickstart installation of SQL Server 2016

info_tip SupportoGet Help

modificare il contenuto Contribuire alla documentazione di SQLContribute SQL documentation