Wie lang ist eine typische moderne Mikroprozessor-Pipeline?

16

Ich habe etwas über Pipelining gelernt, aber das war 4-stufig und 5-stufig und ich denke, dass modernes Pipelining in der Praxis viel länger und komplizierter ist. Wie lang sind typische Pipelines und wie viel können wir erwarten, dass sie zunehmen, und wo ist der Punkt, an dem bei längeren Pipelines sinkende Renditen bei den Leistungsgewinnen erzielt werden?

Niklas
quelle
1
Ich denke, man kann damit rechnen, dass sie in den
20ern sind

Antworten:

26

Intel hatte 5 Pipeline-Stufen in seiner ursprünglichen Pentium-Architektur. Die Anzahl der Stadien erreichte mit 31 in der Prescott-Familie einen Höchstwert, ging aber danach zurück. In den Prozessoren der Core-Serie II (i3, i5 und i7) befinden sich derzeit 14 Stufen in der Prozessor-Pipeline.

Microarchitecture   Pipeline stages
P5 (Pentium)             5
P6 (Pentium 3)          10
P6 (Pentium Pro)        14
NetBurst (Willamette)   20
NetBurst (Northwood)    20
NetBurst (Prescott)     31
NetBurst (Cedar Mill)   31
Core                    14
Bonnell                 16
Sandy Bridge            14
Silvermont              14 to 17
Haswell                 14
Skylake                 14
Kabylake                14

Prescott erzielte gegenüber seinem Vorgänger nur bescheidene Leistungszuwächse, und sein komplexeres Design erforderte im Vergleich zu seinen Leistungszuwächsen erheblich mehr Leistung. Obwohl es andere Faktoren gab, die zu Prescotts enttäuschender Leistung beigetragen haben, scheint es klar zu sein, dass eine Erhöhung der Anzahl der Pipeline-Stufen letztendlich zu sinkenden Erträgen führt.

Referenzen
Prescott verschiebt Pipelining-Grenzen
Die Intel-Architektur-Prozessor-Pipeline-
Liste der Intel-CPU-Mikroarchitekturen
Die optimale Pipeline-Tiefe für einen Mikroprozessor

Robert Harvey
quelle
Irgendwelche Updates für die letzten 4 Jahre?
Toasted_flakes
3
@toasted_flakes: Nach Bonnell hat sich Intel mehr oder weniger mit 14 Pipeline-Phasen abgefunden (16 mit Fetch / Retire). Siehe Liste der Intel-CPU-Mikroarchitekturen .
Robert Harvey
2
Ein Skylake-Prozessor verfügt außerdem über eine Warteschlange mit 224 Einträgen für die Ausführung von Befehlen außerhalb der Reihenfolge sowie über eine Warteschlange für bis zu 72 ausstehende Ladevorgänge und eine Warteschlange mit 97 Einträgen, sodass die Verzögerung zwischen dem Lesen eines Befehls und dem Zurückziehen des Befehls verringert werden kann Seien Sie enorm , sagen Sie, wenn Sie hundert abhängige Ladeanweisungen haben, gefolgt von ein paar hundert abhängigen Divisionsanweisungen. Dies hat jedoch nicht die Nachteile, die zu viele Pipelinestufen haben.
gnasher729
8

In Bezug auf andere moderne Prozessoren:

  • ARM bis zu 7: 3 Stufen (noch weit verbreitet sind einfachere Geräte)
  • ARM 8-9: 5 Stufen;
  • ARM 11: 8 Stufen;
  • Cortex A7: 8-10 Stufen;
  • Cortex A8: 13 Stufen;
  • Cortex A15: 15-25 Stufen.

Aus Wikipedia .

9000
quelle