Hyper-Threading

Aktualisiert am:

Hyper-Threading (Intel) und SMT (AMD) erzeugen mehrere logische Prozessoren pro physischem Core. Bei physischen Servern zählen für die Lizenzierung nur physische Cores. Bei virtuellen Maschinen müssen Hardware-Threads beachtet werden, wenn ein vCore auf mehrere Threads gemappt ist.

Was ist Hyper-Threading?

Hyper-Threading ist Intels Bezeichnung für Simultaneous Multi-Threading (SMT). Die Technologie ermöglicht es einem physischen Prozessorkern, zwei oder mehr Threads parallel auszuführen. Das Betriebssystem sieht dadurch mehr logische Prozessoren als physische Cores vorhanden sind.

Bei aktuellen Server-Prozessoren gilt:

  • Intel Xeon: 2 Threads pro Core (Hyper-Threading)
  • AMD EPYC: 2 Threads pro Core (SMT)

Ein Server mit 16 physischen Cores zeigt bei aktiviertem Hyper-Threading 32 logische Prozessoren an.

Relevanz für die Lizenzierung

Laut Microsoft Licensing Guidance  beeinflusst Hyper-Threading den Lizenzbedarf bei physischen Servern nicht. Microsoft lizenziert nach physischen Cores, nicht nach Hardware-Threads. Das gilt für Produkte mit Core-basierter Lizenzierung wie:

Beispiel: SQL Server

Ein physischer Server mit 2 Prozessoren à 8 Cores:

Hyper-ThreadingLogische ProzessorenBenötigte Core-Lizenzen
Deaktiviert1616
Aktiviert3216

Die Lizenzierung basiert auf den 16 physischen Cores, nicht auf den logischen Prozessoren.

Editions-Limits

Die Limits der Standard Edition (32 Cores für SQL Server, 16 Cores für Windows Server Standard) beziehen sich ebenfalls auf physische Cores. Mit Hyper-Threading können Sie die volle Performance dieser physischen Cores nutzen, ohne zusätzliche Lizenzen zu benötigen.

Warum die Verwirrung?

Die Verwechslung von physischen und logischen Cores führt oft zu Missverständnissen:

  • Das Betriebssystem zeigt logische Prozessoren an (z.B. 32 bei 16 physischen Cores mit HT)
  • Manche Virtualisierungsplattformen sprechen von "vCPUs", die logischen Prozessoren entsprechen
  • Ältere Dokumentationen waren teilweise unklar formuliert

Die offiziellen Lizenzierungsguides bestätigen, dass Hyper-Threading die Anzahl der erforderlichen Core-Lizenzen bei physischen Servern nicht beeinflusst.

Virtuelle Maschinen

Bei virtuellen Maschinen hängt die Regel davon ab, ob Sie einzelne VMs oder den gesamten Host lizenzieren.

VM-Lizenzierung

Wenn Sie einzelne VMs lizenzieren (mit Software Assurance oder CSP-Subscription), müssen Sie laut Microsoft Product Terms  jeden Hardware-Thread zählen, auf den ein virtueller Core gemappt ist:

"If any Virtual Core is at any time mapped to more than one Hardware Thread, Customer needs a License for each Hardware Thread to which it is mapped."

Konkretes Beispiel: Ein HPE ProLiant DL380 Gen11 mit zwei Intel Xeon Gold 6526Y (je 16 Cores) hat 32 physische Cores. Mit aktiviertem Hyper-Threading sieht der Hypervisor 64 logische Prozessoren. Sie lizenzieren eine einzelne VM mit 8 vCPUs. Ist der Host überprovisioniert und mappt der Hypervisor diese 8 vCPUs auf je 2 Hardware-Threads, benötigen Sie 16 Core-Lizenzen für diese VM statt 8.

Host-Lizenzierung

Lizenzieren Sie den gesamten Host, zählen nur die physischen Cores. Im Beispiel oben wären das 32 Core-Lizenzen für den Host. Die Hardware-Thread-Regel gilt dann nicht, da Sie nicht einzelne VMs lizenzieren.

Wann passiert das Mapping?

Das Mapping von vCPUs auf Hardware-Threads geschieht typischerweise, wenn ein Host überprovisioniert ist. Ein Beispiel: Der Host hat 32 physische Cores (64 logische Prozessoren mit HT). Wenn die VMs zusammen mehr als 32 vCPUs nutzen, müssen einige vCPUs auf Hardware-Threads statt auf physische Cores laufen. Nicht jeder Hypervisor mappt vCPUs automatisch auf mehrere Threads. Prüfen Sie die Konfiguration Ihrer Virtualisierungsplattform.