Desktop- und Server-CPUs mit Dual-Core von Intel & AMD

AMDs Dual-Core gaukelt HT vor

AMDs Dual-Core-Prozessoren geben über eine erweiterte CPUID-Funktion (eax = 8000_0008) die Anzahl von Cores pro Sockel an. Allerdings kann vorhandene Software mit dieser neuen ID nichts anfangen. So unterscheiden Programme bisher maximal zwischen diskreten SMP-Systemen und Hyper-Threading.

Um den Vorteil bisheriger Hyper-Threading-optimierter Programme direkt zu nutzen, werden sich AMDs Dual-Core-Prozessoren als HT-fähig zu erkennen geben. Entsprechend wird über CPUID.HTT der Wert 1 ausgegeben. Zusätzlich erkennt die Software über CPUID.logical_number_of_processors = 2 zwei logische Prozessoren.

Diese Vorgehensweise bei der Identifikation von AMDs Dual-Core-Prozessoren ist ein schlauer Schachzug. Intel hat seit Einführung der Hyper-Threading-Technologie nicht unerheblichen Aufwand betrieben, damit Software-Entwickler ihre Anwendungen Thread-optimiert programmieren. Laut AMD arbeiten die Hyper-Threading-Scheduling-Regeln problemlos mit "echten" Dual-Core-Prozessoren zusammen.

Um künftiger Software dennoch die korrekte Identifikation zu ermöglichen, gibt es in der erweiterten CPUID das Feature-Bit HTVALID. Dieses Bit wird bei AMDs Dual-Core-Prozessoren den Wert 0 besitzen. Damit können Software-Entwickler erkennen, ob ein Prozessor Hyper-Threading tatsächlich unterstützt oder dies nur vorgaukelt.