性能之王还是不进反退,Prescott全
在我们的上一篇文章中,我们已经看到AMD K8核心处理器为了进一步提升频率,将流水线级数由K7的10级增加到了12级。而在Prescott核心的P4处理器中,为了进一步提升处理器的频率,Intel把Trace Cache之后的流水线级数变本加厉,由以前的20级增加到了30级。这恐怕是此款处理器最引人注目的改变之一了,也因此引来了诸多媒体的议论。
我们都知道,处理器流水线基本可以划分为:指令取→指令解码→指令执行→载入/储存→写回寄存器这五个部分。通过这样的流水线设计,就可以在每条流水线上同时处理一条以上的指令。为了叙述方便,我们可以把流水线假想为一组传送带,如下图:
处理器长短流水线示意图(点击放大)
短流水线好比节数较少,单节皮带行程长的模式。它的单节皮带负载能力更大。而长流水线则好比节数较多,单节皮带行程短的模式。它的单节皮带负载能力较弱。
虽然从长度上看,由于长流水线级数较多,因此行程也较远,在皮带传送速度相同(均为1M/s)的情况下,当然是短流水线占优势。但随着工厂技术的发展,必须提高产量。此时我们就需要提高传送带的送货量。显然我们可以想到最简单的方法就是增加皮带的传送速度。
然而在短流水线的传送带中,由于单节皮带较为粗长,本身质量较大,因此要进一步提速就显得十分困难(极限速度可提升到1.2M/s)。相比之下长流水线设计的传送带则由于单节皮带质量小,提速就显得容易得多(极限速度可提升到2M/s)。这样我们通过给长流水线传送带大幅度提速,在流水线各环节同时正常运转的情况下,实现了超越短流水线传送带的目的。
显然,如果在此基础上进一步增加并行传送带的组数,构成“超标量“传送带,那么长流水线的速度优势还将得到更好的体现。
由于上述的优点,多数处理器在升级换代时,基本都采取了增加流水线级数的策略,以下,我们给出Intel公司几款具有代表性处理器的流水线布置图,以供大家参考。
Intel系列处理器流水线级数简图(点击放大)
需要注意的是,P4系列处理器的流水线级数尚不包括前面的取指令、解码部分。通过增加流水线的级数,Intel宣称Prescott核心P4处理器的工作频率将可达到5GHz左右。
但是凡事有利必有弊。首先,长流水线的优势必须在提速到达一定程度之后才能够体现出来。可是处理器厂家在长流水线处理器推出的初期,由于市场等多方面因素,又不可能马上以较高的频率推出新处理器。因此,这些处理器在某些条件下自然就会出现不尽人意的情况。其次,Prescott的超长流水线设计和较高的频率,也将带来其它方面的一系列问题。为了减小这些问题可能带来的损失,在Prescott中,Intel采取了许多措施进行补救。下面,我们就进一步为大家说明。<