Mehrfach-SMT bei Intel ein Thema?

Status
Für weitere Antworten geschlossen.

Marrrrtin

Commodore Special
Mitglied seit
15.10.2002
Beiträge
354
Renomée
16
Standort
Erde
HyperThreading alias SMT ist ja dank Intel ;D auch in der x86-Welt seit geraumer Zeit angekommen. Allerdings doch in ziemlich einfacher Form verglichen mit anderen Architekturen.

Wieso beschränkt Intel sich da auf 2 logische Kerne je CPU-Kern? Erlaubt die x86-Architektur nicht mehr oder wäre der Aufwand zu hoch? Andere machen ja 4-fach SMT oder gar noch mehr *noahnung*
 
Hallo Marrrrtin,

zunächst mal ist es natürlich einfacher SMT mit 2 logischen Kernen zu implementieren. Einfache Fragen wie "Wer ist dran?" sind bei zwei logischen Einheiten einfach zu beantworten: "Wenn ich es nicht bin, dann kann es nur der anderen sein". Solche Dinge werden gleich deutlich komplexer, wenn ich etwa vier logische Kerne nutzen möchte.
Dann ist SMT ja auch nur effizient, wenn in der CPU-Pipeline noch Kapazität für die zusätzlichen logischen Kerne vorhanden ist. In der Regel hilft SMT etwa die Wartezeiten auf Speicherzugriffe zu kaschieren indem ich die Ressourcen während der Speicherwartezeit eben für den anderen logischen Kern nutze. Aber bei vier logischen Kernen pro "echtem" Kern könnte die Speicherwartezeit zu knapp sein um alle vier logische Kerne zum Zug kommen zu lassen.

Also zusammengefasst:
1. 2 SMT Threads pro Kern sind einfacher zu implementieren
2. Mehr SMT Threads pro Kern machen nur Sinn, wenn in der Pipeline Ressourcen für soviele logische Kerne zur Verfügung stehen.

Hoffe das beantwortet die Frage,

Christian
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben Unten