Home Site Map Sonstige Aufsätze Weblog und Gequassel counter

Vergleichender Überblick über die Core-Mikroarchitektur

Im Jahre 2006 führte Intel die Core-Mikroarchitektur ein. Sie löste die Netburst-Architektur des Pentium 4 ab. Diese war in der Leistung nicht mehr steigerbar. Vor allem die Abwärme machte Probleme. Sie verhinderte ein Steigern des Taktes auf das Niveau das Intel für die Architektur plante. Die Core-Mikroarchitektur basierte auf dem Pentium M, einem Mobilprozessor der israelischen Dependance von Intel, der natürlich auf eine geringe Leistungsaufnahme optimiert war.

Seitdem wird diese Architektur eingesetzt. Sie wurde in der Zeit verbessert, so zog ein Mikro-op Cache ein, es wurden mehrere Anweisungen zu einer zusammengefasst (Micro-Op-Fusion). Vor allem aber wurden die entsprechenden Funktionseinheiten immer stärker erweitert. Es gab immer mehr davon. In diesem Artikel will ich die Evolution anhand von Kennwerten verdeutlichen.

Core MikroarchitekturDer allgemeine Aufbau sieht so aus wie in diesem sehr vereinfachten Schema der Core Mikroarchitektur im Bild links. Es beginnt mit dem klassischen Fetch. Der Prozessor holt nicht einen Befehl, sondern eine ganze Bytefolge fester Größe, z. B. eine Cacheline von 32 Bytes. Ein Predecoder zerlegt die Bytes in einzelne Befehle und speist diese in eine Instruktionsqueue ein. Queues, also Warteschlangen gibt es viele in dem Design, da man so Einheiten auf eine dauerhafte hohe Leistung auslegen kann, ohne sich um Verzögerungen bei der Verarbeitung in den folgenden Einheiten kümmern zu müssen.

Der Decoder erzeugt aus einem x86 Befehl – üblicherweise als IA32 oder IA64 Befehlssatz bezeichnet, einfachere Befehle, genannt MikroOps (µOps). Komplexere MicroOps werden nicht direkt ausgeführt, sondern stehen für eine ganze Befehlsliste in einem Mikrocode-ROM.

Was dem Decoder folgt, ist das Kernstück der Out-Of-Order (OOO) Engine. Intern hat der Prozessor viel mehr Register als die IA64 Architektur. Die Rename/Alloc Einheit benennt IA32/IA64 Register intern um und mappt sie auf ein freies internes Register. Sie verfolgt die Belegung der IA32/IA64 Register und zieht, wenn möglich, so MicroOps vor, die gerade unbenutzte Register benutzen. Sie führt auch Code aus, ohne zu wissen, ob er tatsächlich im Ablauf auch ausgeführt wird (das kann vorkommen, wenn vorher ein Sprung erfolgt). Dies nennt man spekulative Ausführung. Die Retirement Unit schaut, ob ein Befehl komplett abgearbeitet ist, schreibt dann die Ergebnisse zurück in die im Code sichtbaren Register und gibt die internen Register frei.

Die MicroOps gelangen, dann zum Scheduler der schaut welche internen Funktionseinheiten frei sind (die natürlich auch zur Art des Befehls passen müssen). Es gibt drei Gruppen von Funktionseinheiten – für Ganzzahloperationen (neben Rechnungen auch Vergleiche und logische Verknüpfungen), für Fließkommaoperationen (auch SIMD-Operationen mit mehreren Operanden pro Befehl) und Speicheroperationen (Laden und Speichern von Werten in/aus Registern, Kopieren von Speicherbereichen). Dieser Scheduler hat Ports, in der Abbildung sind es fünd an denen dann die Funktionseinheiten hängen, hier 12. An einem Port können mehrere Funktionseinheiten hängen. Berechnungen benötigen mehrere Takte, das heißt eine Funktionseinheit ist längere Zeit beschäftigt. Speicheranweisungen gehen dagegen sehr schnell. So hängen oft an einem Port weniger Einheiten für Speicheroperationen als für Rechenoperationen, da letztere für den Fall einer Belegung einer Einheit weitere zur Verfügung stellen, damit jeder Port pro Takt einen Befehl abarbeiten kann.

Ebenfalls zum Kern gehören die Caches. Es gibt getrennte Level 1 (L1) Caches für Daten und Code. Der L2-Cache ist für Daten und Code gemeinsam und alle Kerne teilen sich einen gemeinsamen Level 3 Cache. Die L1 und L2 Caches blieben in der 15-jährigen Entwicklung relativ konstant, erst mit Skylake wurden sie vergrößert. Die L3-Caches wurden dagegen stetig größer. Eine ausführlichere Darstellung finden sie hier.

Verbesserungen der Architektur

Ich verwende im Folgenden die internen Codenamen von Intel für die Kerne. Mit der Core-Mikroarchitektur brachte Intel viel mehr Prozessortypen heraus als bei früheren Generationen. Früher unterschieden sich die Prozessoren nur durch den Takt, später kam noch die Cachegröße hinzu. Beim Pentium 4 kam als Unterscheidungskriterium noch Hyperthreading (SMT) und Doppelkerne hinzu. Heute gibt es auch Unterscheidungen im internen Aufbau. Ein einfacher Prozessor kann einige Verbesserungen wie MakroOp-Fusion oder MicroOp-Cache nicht enthalten. Normal ist inzwischen, dass Spitzenmodelle einen erweiterten Befehlssatz haben, denn die preiswerteren Prozessoren nicht nutzen können. Serverprozessoren (die Xeon-Linie) haben zusätzliche Befehle die für Server wichtig sind und sie unterstützen mehr RAM-Sockel oder mehr PCI-Lanes. Hauptkriterium für die Unterscheidung innerhalb einer Linie sind aber Taktfrequenzen, Prozessorkernanzahl und Cachegrößen.

Es gibt aber für die Atom-Linie auch eine zweite Architektur, die z. B. die oben erwähnte OOO-Engine nicht beinhalten, also keine Befehle vorziehen können und bei gleichem Takt deutlich langsamer sind. Das Wörtchen „Atom“ ist deswegen inzwischen etwas verschrieben, sodass Intel neuerdings die Prozessoren nicht mehr als Atoms bezeichnet, sondern als Celerons und Pentiums. Man erkennt sie noch an den Buchstaben „J“ oder „N“ in der Nummer. Zumindest bei den Pentiums findet man aber auch die Core-Mikroarchitektur. Die Pentiums markieren den Einstieg in diese Architektur. Unter der Bezeichnung „Xeon“ werden Serverprozessoren vermarktet, die alle die Core-Mikroarchitektur einsetzen.

Namenskonnvention

Die ersten Prozessoren hatten noch eine vom heutigen Schema abweichende Bezeichnung die sich an den alten Bezeichnungen Pentium und Celeron aber auch schon den bei den Pentium 4 Mehrkernern eingeführten „Core“ Begriff orientierte. Das gilt für die ersten beiden Generationen Meron/Peryn und Nehalem/Westmere. Danach schwenkte Intel auf ein eindeutiges Namensschema um.

Für die meisten PC von Bedeutung ist die „Core-Nummerierung“ die beim Schreiben des Artikels aktuellen Topmodells Intel Core i9-12900K so aussieht:

i3: 12100, 12300

i5: 12400 – 12600

i7: 12700

i9: 12900

Die 9-er Serie kam erst 2017 mit der 7xxx Serie hinzu. Sie sind die leistungsfähigsten Prozessoren für Desktop-Rechner, die abgewandelte Serverprozessoren sind. i3 markiert das Einstiegslevel, i5, die mittlere Leistungsklasse und i7 die höhere Leistungsklasse. Einige Firmen vermarkten i7 und i9 Rechner auch als Workstations.

Mit einher ging ein Entwicklungsplan. Es gibt immer zwei Generationen mit einer Architektur, die idealerweise ein Jahr auseinander liegen. Zuerst wird eine neue Architektur eingeführt, ein Jahr später eine neue Fertigungstechnologie mit kleineren Strukturbreiten, aber derselben Architektur. Intel bezeichnet das als „Tik-Tock“. Die Architekturen kann man auch an den Codenamen erkennen die dann gemeinsame Silben haben wie „...-Bridge“, „...-well“ oder „...-lake“. Dieser Plan ist aber nicht aufgegangen. Kaby Lake („7nnn“) sollte im 10 nm Prozess entstehen, nachdem die Architektur Skylake im 14 nm Prozess debütierte. Erst bei Cannon Lake („8nnn“) debütierte der 10 nm Prozess, bei dem es aber so große Probleme gab das nur einige Prozessoren dieser Serie erschienen und Intel für die meisten Prozessoren den 14 nm Prozess einsetzte. Erst bei Ice Lake („10nnn“) hatte Intel den Prozess im Griff. Die bei Schreiben des Artikels letzte Generation, Alder Lake, arbeitet immer noch im 10 nm Prozess. Andere Chipfertiger setzen seit Jahren schon den 7 nm Prozess ein.

In den internen Dokumenten zur Mikroarchitektur unterscheidet Intel nur „Core Mikroarchitektur“, Sandy Bridge, Haswell, Skylake, Ice-Lake (Mobilarchitektur, die vor der Desktop Architektur Rocket Lake erschien) und Alder-Lake. Das heißt: Alle CPU der 6-ten bis 10-ten Generation basieren auf der Skylake Architektur und haben nur kleine Verbesserungen.

Die ersten beiden Generationen hatten noch nicht das ix-Gnnn Schema, das ich gerade angesprochen habe. Sie hießen „Intel Core 2“ (Intel Core sind Prozessoren auf Basis der Netburst Architektur). Die erste Generation der ix-Gnnn hatte nur dreistellige Nummern, also keine führende Null. Die zweite fing dann gleich mit der führenden Ziffer „2“ an.

Golden Cove MikroarchitekturSonderfall: Alderlake (i12-xxx)

Mit Alder Lake konnte Intel wieder zum Erzrivalen AMD aufschließen. Der Mit der Zen-Architektur (Produktname „Ryzen“) Intel in der Performance überholt und Marktanteile abgenommen hatte. Die vorherigen Prozessorgenerationen seit Haswell steigerten die Geschwindigkeit nur langsam. Erst mit dem 10 nm Prozessor konnte Intel auch genügend Prozessoren, auf einem Die unterbringen, um den besten Ryzen-Prozessoren Paroli zu bieten.

Alder Lake ist eine bei den Spitzenmodellen gemischte Architektur. Es gibt die neuen P-Kerne (P für Performance) die auf der Golden Cove Architektur basieren und auf schnelle Abarbeitung einzelner Threads optimiert sind. Dazu kommen E-Kerne (E für „effizient“), die auf parallele Ausführung mehrere Threads ausgelegt sind. Sie basieren auf einer Aton-Architektur, die aber stark erweitert wurde, sodass ein E-Kern in etwa so schnell wie ein Kern des Kaby Lake (i7-xxx) ist.

Die Serien i3 und i5 haben nur die P-Kerne. Ab dem Intel i5-12600F / KF (wichtig: Bezeichnung mit Buchstaben!) enthalten die Prozessoren auch die E-Kerne. Auch wenn ein E-Kern bedeutend langsamer als ein P-Kern ist, belegen vier davon nur ein Drittel mehr Platz als ein P-Kern, sodass bei gegebener Größe auf dem Chip-Die, die Gesamtperformance höher ist, als wenn Intel nur P-Kerne einsetzen würde. Wie komplex ein P-Kern im Vergleich zur Einführung der Mikroarchitektur ist zeigt das Schaubild rechts. Das Bild darunter gibt die Architektur der effizienteren E-Kerne an, die sogar noch mehr Funktionseinheiten haben

Die folgende Tabelle gilt nur für die Ix-Serie, also nicht die Xeon Serverprozessoren und Mobilprozessoren, für die es auch zum Teil abgewandelte Core-Mikroarchitekturen gibt, wie Tiger Lake für Mobilprozessoren.Gracemont

Generation

Intel Core 2

ix-nnn

ix-2nnn

ix-3nnn

ix-4nnn

ix-5nnn

Codename

Merom / Penryn

Nehalem / Westmere

Ivy Bridge

Sandy Bridge

Haswell

Broadwell

L1 Code Cache

32 KB

32 KB

32 KB

32 KB

L1 Daten Cache

32 KB

32 KB

32 KB

32 KB

L2 Cache

256 KB

256 KB

256 KB

256 KB

L3 Cache

Nur bei Xeon: 8-16 MB

4-24 MB

1-8 MB

2-8 MB

Ports

6

5

6

7

Funktionseinheiten

11

9

9

16

MikroOps pro Takt

4

6

6

8

Größe Mikorops Queue


18

28

56

Reservation Station

32

32

54

60

Generation

ix-6nnn

ix-7nnn

ix-8nnn

ix-9nnn

ix-10nnn

ix-11nnn

ix-12nnn

Codename

Skylake

Kaby Lake

Coffee Lake

Coffee Lake Refresh

Comet Lake

Rocket Lake

Alder Lake

(P/E-Cores)

L1 Code Cache

32 KB

32 KB

32 KB

32 KB

L1 Daten Cache

32 KB

48 KB

48 KB

48 KB

L2 Cache

256 KB

512 KB

512 KB

1,25 / 2 MB

L3 Cache

Bis 2 MB/Kern


Bis 16 MB


Ports

8




10

10

12 / 17

Funktionseinheiten

18

23

31

33 / 37

MikroOps pro Takt

8

10

10

16

Größe MikroOps Queue

128

140

140

144

Reservation Station

60




Noch eine Bemerkung zu den Einträgen. Da es innerhalb der Architektur verschiedene Prozessoren gibt, sind einige Parameter variabel. So die Level 3 Cachegröße, die Zahl der Kerne und der Takt. Angegeben wurde daher auch immer ein Bereich bzw. beim Takt der Spitzentakt. Bei der Transistorzahl ist der Unterschied noch größer. Xeon Prozessoren haben bis zu 28 Kerne, es ist klar, dass sie viel mehr Transistoren pro Prozessor haben als ein Desktop-Prozessor mit vier Kernen. Vor allem die Caches beeinflussen die Transistorzahl enorm. 1 MB Level 3 Cache hat in der 4-Zell Technologie 32 Millionen Transistoren, schnellere Caches mit mehr Transistoren pro Zelle noch mehr. Der Sockel in der folgenden Tabelle ist der erste eingeführte Sockel für Desktop-Rechner. Server haben andere Sockel, für Notebooks gibt es auch andere Bauformen, da diese fest verlötet werden und Intel wechselte auch den Sockel innerhalb einer Generation.

Generation

Intel Core 2

Intel Core 2


ix-nnn

ix-2nnn

ix-3nnn

ix-4nnn

ix-5nnn

Codename

Merom

Penryn

Nehalem

Westmere

Sandy Bridge

Ivy Bridge

Haswell

Broadwell

Transistoren

105-582 Mill.

228-820 Mill.

731-2300 Mill,

382 – 2600 Mill.

2104 Mill.

634-1400 Mill.

1400 Mill.

1300-1900 Mill.

Technologie

65 nm

45 nm

45 nm

32 nm

32 nm

22 nm

22 nm

14 nm

Sockel

Sockel M 478

Sockel M 478

LGA 1156

LGA 1156

LGA 1155

LGA 1155

LGA 1150

LGA 1150

GPU

Keine

keine

keine

HD Graphics

HD Graphics

HD Graphics 2600,4000

HD Graphics 4000,500, Iris 5000

HD Graphics 5000,6000

Bustakt

533 MHz – 800 MHz

800-1333 MHz

1066-1333 MHz

1066-1600 MHz

1333-1866 MHz

1333-2166 MHz

2400 MHz

Einführung

Juli 2006

November 2007

November 2008

Januar 2010

Januar 2011

April 2012

Juni 2013

Oktober 2014

Kerne

1-4

2-6

2-6

1-4

1-4

2-8

2-10

Max. Takt

3,33

3,33

3,46

3,60

4,1

4,4

3,8

Serien




I3,I5,I7

I3,I5,I7

I3,I5,I7

I3,I5,I7

I5,I7

IPC

1,2

1,2

1,3

1,3

1,5

1,5

1,7

1,8

Generation

ix-6nnn

ix-7nnn

ix-8nnn

ix-9nnn

ix-10nnn

ix-11nnn

ix-12nnn

Codename

Skylake

Kaby Lake

Coffee Lake

Cofee Lake Refresh

Comet Lake

Rocket Lake

Alder Lake

Transistoren

1400-1700 Millionen

2160 Mill.

keine Angabe

keine Angabe

keine Angabe

keine Angabe

10 Mrd. (geschätzt)

Technologie

14 nm

14 nm

14 nm

14 nm

14 nm

10 nm

10 nm

Sockel

LGA 1151

LGA 1151

LGA 1150

LGA 1150

LGA 1200

LGA 1200

LGA 1700

GPU

HD520/30, Iris Pro

HD 6x0

Hd 4x00,5x00

UHD 620/630

UHD 610-630

Intel Xe

Intel Xe

Bustakt

1600-2133

1600-2133

2400-2666 MHz

2400-2666 MHz

2133-2666 MHz

Bis 3200 MHz

Bis 5200 MHz

Einführung

August 2015

August 2016

September 2017

Oktober 2018

August 2019

März 2020

November 2021

Kerne

2-4

2-4

2-8

2-8

2-10

4-8

Bis 8 P/E-Kerne

Max. Takt

4,5 GHz

4,5 GHz

5,0 GHz

5,0 GHz

5,3 GHz

5,3 GHz

3,9 (E-Kerne)

5,3 P-Kerne

Serien

I3,I5,I7

I3,I5,I7

I3,I5,I7,I9

I3,I5,I7,I9

I3,I5,I7,I9

I5,I7,I9

I3,I5,I7,I9

IPC

2,1

2,2

2,5

2,6

2,6

2,9

3,4 P-Kerne
2,2 E-Kerne

Die Geschwindigkeit im Vergleich

Aufgrund der unterschiedlichen Kernzahl und Taktfrequenzen ist ein Vergleich von Prozessoren verschiedener Generationen schwierig. Ich habe die obigen IPC-Werte aus verschiedenen Intel Angaben rekonstruiert, die die Steigerungen relativ zueinander darstellten. Dies ist natürlich eine geschönte Angabe für den Idealfall, nicht den Durchschnitt über einen Anwendungsmix. IPC steht für Instructions per Cycle, also wie viele x86 Befehle der Prozessor pro Takt ausführen kann. Multipliziert man dies mit dem Takt und der Anzahl der Prozessoren so bekommt man die Gesamtzahl der Befehle, die der Prozessor ausführt. Hyperthreading, Intels Bezeichnung für SMT spielt dabei keine Rolle. Es ermöglicht es nur diese Grenze eher zu erreichen. Für einige Architekturen gibt es keine Aussagen von Intel, zumindest der Wert für Kaby Lake wurde von unabhängigen Benchmarks nicht bestätigt.IPC Vergleich

Generation

IPC Steigerung zur Vorgängergeneration

IPC Steigerung summiert

Dothan


100 %

Merom

+15 %

115 %

Penryn

2 %

117,5 %

Nehalem

12 %

131,5 %

Sandy Bridge

10 %

144,5 %

Ivy Bridge

5 %

152,5 %

Haswell

10,5 %

167,5 %

Broadwell

5,5 %

177 %

Skylake

10 %

190 %

Kaby Lake

12 %

212 %

Cofee Lake



Comet Lake



Rocket Lake

19 %

252 %

Alder Lake

18 %

297 %

Diese Werte von Intel dürften aber nicht im Alltag auftreten, sondern nur bei speziellen Programmen die genau die Verbesserungen nutzen die in jeder Generation dazukamen.

Eine Website hat die Geschwindigkeit von Programmen untersucht und kam zu wesentlich schlechteren Ergebnissen:

IPC

Perfomance Gewinn

Intel Angabe

Dothan


-

Merom


+15%

Penryn


+2%

Nehalem


+12%

Sandy Bridge


+10%

Ivy Bridge

+ 5,8 %

+5%

Haswell

+ 11,2 %

+10,5%

Broadwell

+ 3,3 %

+5,5%

Skylake

+ 2,4 %

+ 10 %

Insbesondere bei Skylake ist die Abweichung deutlich. Das Thema IPC habe ich in einem eigenen Artikel über die gesamte Entwicklung der Intel-Prozessoren betrachtet. Auch diese Grafik der Zeitschrift ct kommt zu deutlich niedrigeren Ergebnissen. Demnach hat Skylake etwa 155-150 % mehr Performance als Penryn.

Ich habe aber auch probiert diese Werte selbst zu bestimmen und dabei Benchmarks der Zeitschrift ct’ aus verschiedenen Jahren genutzt. Es ist nicht einfach und auch fehleranfällig, da das Programm, also die Softwaresuite auch 15 Jahre lang weitestgehend unverändert bleiben soll. Das gelang nur zum Teil. Ich habe die Cinebench Werte die man auch bei älteren Tests findet genommen. Allerdings änderte sich die Versionsnummer in der Zeit von 15 auf 23 und in jeder Version bekommt man für denselben Prozessor andere Werte. Es war aber so das zumindest ein Prozessor der Liste auch mit der neuen Cinebench-Version getestet wurde. Ich habe daher einen Faktor bestimmt um den die neue Cinebench Version andere Werte liefert und mit diesem Faktor die Werte korrigiert. Normiert ist es auf Cinebench R20. Ich habe versucht pro Generation einen Prozessor der mittleren Leistungs- und Preiskategorie „i5“ zu finden. Das gelang nicht immer, so sind einige I3 wie auch ein Übertaktermodell in der Liste. Da alle Prozessoren einen Turbo-Modus für wenige Kerne haben, unterscheide ich Single- und Multithreadleistung.

Prozessor

Kerne

Takt normal

Takt Turbo

Cinebench Singlehthread

Cinebench Multithread

Cinebench / Kern GHz Single

Cinebench / Kern GHz Multi

i5-760

4

2,8


204

705

72

63

i5-2400

4

3,1


267

941

86

76

i5-3470 / i5-3570K

4

3,2

3,4

275

1010

81

79

i5-4570

4

3,2

3,6

345

1280

96

100

i5-5775C

4+HT

3,3

3,7

366

1764

99

133 / 67

i5-6400

4

2,7

3,3

344

1247

104

114

i5-7500

4

3,4

3,8

399

1443

105

106

i5-8400

6

2,8

4,0

416

2284

104

136

i5-9400

6

2,9

4,1

423

2341

103

134

i5-10400

6 + HT

2,9

4,3

450

3197

104

183 / 92

i5-11400

6 + HT

2,6

4,4

529

3888

120

249 / 124

i5-12400

6 + HT

2,5

4,4

664

4794

150

319 / 160

Bei den Multithread-Leistungen ist es so, das Hyperthreading etwas Mehrleistung bringt, aber nicht die doppelte Anzahl an Kernen (Wert hinter dem Schrägstrich) ersetzt. Man rechnet mit maximal 30 Prozent Mehrleistung die so erreichbar ist.

Das Ergebnis ist ernüchternd. In der Singlethread Leistung wurde die Leistung verdoppelt, wobei bis Haswell es eine Steigerung um 40 % gab und dann erst wieder eine ab der Generation 11. Bei der Multithreadleistung ist der Gewinn deutlich größer. Hier bringt Hyperthreading definitiv etwas. Die von Intel reklamierte Steigerung von fast 300 % findet man nicht bei der Singlethread Leistung und bei realistischer Einstufung der Wirkung von Hyperthreading auch nicht bei der Multithreadleistung.

Kernzahl

Die Gesamtleistung kann viel besser durch mehr Kerne als interne Verbesserungen erhöht werden. Als Intel die ersten Zweikernprozessoren im Jahre 2005 einführte, prognostizierten sie, dass die Kernzahl sich alle zwei Jahre verdoppeln würde. Demnach wäre 2021, als die 12-te Generation erschien, also nach der Prognose 512 Kerne pro Prozessor zu erwarten. Betrachtet man sich die Zahl der Transistoren pro Chip, die von 105 Millionen auf 10 Milliarden (zumindest beim Spitzenmodell, der Wert ist aber geschätzt, da Intel seitdem sie im Fertigungsprozess ins Hintertreffen geraten sind, keine Transistorcounts mehr veröffentlichen) gestiegen ist, also um den Faktor 100, so wäre das auch möglich. Es gibt eine Reihe von Gründen, warum dem aber nicht so ist. Der wichtigste ist, das die Leistung des Speichers nicht in dem Maß zugelegt hat. Die Zugriffszeit auf Speicherbausteine hat sich in der Dekade kaum verändert. Sie liegt heute zwischen 10 und 14 Nanosekunden. Da ein Zugriff in einem Takt erledigt ist, würde dies ohne flankierende Maßnahmen nur einen Takt von 70 bis 100 MHz zulassen (dies ergibt sich aus 1/Zugriffszeit). Caches puffern dieses Manko ab und sind deswegen auch immer größer geworden. Doch natürlich verarbeiten Prozessoren auch große Datenmengen, die dann möglichst schnell auch in den Caches landen sollen. Die Lösung für dieses Problem ist seit Anfang der Neunziger nicht nur die Daten zu übertragen, die der Prozessor angefordert hat, sondern automatisch die folgenden Werte auch. DDR-RAM macht das zweimal pro Bustakt und transferiert dabei pro DIMM-Modul 8 Bytes. Das beim Schreiben des Artikels schnellste DDR5 RAM hat einen Bustakt von 5200 MHz, es kann pro Sekunde also 40,8 GByte/s liefern. Ein einziger Kern eines Alder-Lake Prozessors fordert dagegen pro Takt (maximal 5,3 GHz) 32 Bytes an, also 169,6 GByte, und ein Prozessor hat bis zu 16 dieser Kerne. Zwischen der letzten Version von Penryn und Alder Lake stieg der Bustakt von 1600 MHz auf 5200 MHz – das sind in 15 Jahren gerade mal eine Verdreifachung der Datenrate. Nicht umsonst unterstützen die Serverversionen der Prozessoren auch mehr Module, bis zu 16 Stück, während es bei den Desktop-Versionen meist nur zwei oder vier Steckplätze sind.

Der zweite Grund ist die Größe des Prozessorsockels und die Zahl der Pins die man unterbringen kann. Mehr Kerne bedeuten auch mehr Signale zur Außenwelt. Hier hat sich seit Nehalem mit dem dort eingeführten Sockel 1151 kaum etwas geändert. Auch hier haben Serverprozessoren größere Prozessorgehäuse mit deutlich mehr Pins.

Links:

https://www.cpu-monkey.com/de/cpu_benchmark-cinebench_r20_single_core-9

https://www.cpu-monkey.com/de/cpu_benchmark-cinebench_r20_multi_core-10

https://www.heise.de/select/ct/2020/7/2000809335481727795

https://www.heise.de/select/ct/2017/1/1483626790388148

https://epaper.heise.de/download/archiv/3443eb123603/ct.21.25.084-089.pdf

https://www.intel.com/content/dam/support/us/en/documents/processors/pentium4/sb/25366521.pdf

Artikel verfasst am 28.3.2022


Sitemap Kontakt Neues Impressum / Datenschutz Hier werben / Your advertisment here Buchshop Bücher vom Autor Top 99