典型的现代微处理器管道需要多长时间?


16

我了解了一些关于流水线的知识,但它们是4阶段和5阶段的,而且我认为典型的现代流水线在实践中会更长且更复杂。典型的管道有多长时间,我们可以期望增加多少?对于更长的管道,达到的性能收益回报递减点在哪里?


1
我想你可以期望他们在20年代,但我的记忆是生锈
aaronman

Answers:


26

英特尔在其原始奔腾架构中有5个流水线阶段。普雷斯科特(Prescott)家族的舞台数达到了顶峰,为31,但此后有所下降。如今,在Core II系列处理器(i3,i5和i7)中,处理器流水线有14个阶段。

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在性能上仅比其前身获得了适度的提高,并且其更复杂的设计相对于其性能提高所要求的功率要大得多。尽管还有其他因素影响了Prescott令人失望的表现,但显而易见的是,增加流水线阶段的数量最终会导致收益递减。

参考
Prescott突破了流水线的极限
Intel
英特尔CPU微体系结构Intel体系结构处理器流水线列表
微处理器的最佳流水线深度


最近4年有任何更新吗?
toasted_flakes

3
@toasted_flakes:在Bonnell之后,Intel或多或少地在14个流水线阶段(其中16个具有Fetch / Retire)安顿下来。请参阅“英特尔CPU微体系结构列表”
罗伯特·哈维

2
Skylake处理器还具有224个入口队列,用于无序执行指令,再加上最多可容纳72个未完成负载的队列,再加上97个入口调度程序队列,因此从读取指令到退出指令的延迟可以是巨大的,说如果你有百个相关负载指令,随后几百依赖除法指令。但这并没有给您带来太多管线阶段所具有的缺点。
gnasher729

8

关于其他现代处理器:

  • ARM最多7个:3个阶段(仍广泛使用的是较简单的设备)
  • ARM 8-9:5个阶段;
  • ARM 11:8个阶段;
  • 皮质A7:8-10个阶段;
  • 皮质A8:13个阶段;
  • 皮质A15:15-25个阶段。

来自维基百科

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.