单核CPU已经走了尽头?
到目前为止漏电是最重要的一个问题。尽管利润已经很低了,很多时候对顾客而言具有决定性的因素还是费用问题。所以要求使用很贵的冷却系统并不现实。
过去的经验说明要达到提升40%左右性能的复杂超标量CPU,它的晶体管数量就得翻一翻。许多业内分析家和研究人员的结论都是:单核CPU不再有前途了。正如英特尔的Shehar Borkar所说的那样。
“多线程技术有着这样的潜力,可以提供接近线性的性能提高。两块相对较小的芯片,而不是一块巨无霸式的芯片,能够提供70%到80%的性能提升,而如果用一块巨无霸式的芯片基本只有40%的提升水平。”
请注意“巨无霸”这个词。这里它是有贬义倾向的,暗示了单核CPU是基于过去的技术的。当单核CPU基本只有40%的性能提升时,它却增加了结构的复杂性,同时更带来了头痛的漏电问题。这也解释了为何突然间英特尔的市场推广中不再讨论有关10GHz的CPU,而大谈“线程并行时代”。
然而值得注意的是,这“巨无霸”CPU的40%的性能提升对多数程序来说都是享受得到的。它不要求你的程序花费大量的时间来进行优化。而所谓的70%到80%的性能提升却只有少数程序才能享受得到。其它的程序不得不花费大量的开发时间来获得相同的性能提升。
当然,我们都明白多处理器带来的好处。在处理功耗时,你可以很容易地关掉其中的一个CPU,而不是去管理一个大CPU中的各个部分的功耗。
你可以在一个CPU上运行一个单线程程序,同时关闭另一个CPU。当一个CPU温度过高时,你可以让第二个CPU接替第一个CPU工作。这样做的结果是,每个CPU的温度都可以得到有效的控制。因为CPU温度的降低,漏电量也得以降低。这种技术可以降低整个系统的漏电量。所以双核CPU的一个最初目标就是当只有一个CPU密集型程序时,它能够降低系统的漏电量。
这也可能解释了为什么英特尔认为双核CPU在未来的移动市场上有很大前途的原因—尽管移动市场或许会是最后一个从双核CPU那里获得好处的市场。最后一点,当双核CPU的两个核心都激活时,它的漏电量也将会两倍于只使用一个核心时的漏电量。所以我们认为只有当双核心的移动系统运行在市电上时,它的两个核心才有可能被同时激活。
趋势
那些大力宣扬多线程CPU的第二个论点是“整个行业都在朝着多核CPU前进”。考虑到只有服务器这个市场是由非x86CPU主导的市场,这也不足为奇。对SUN和IBM这些公司来说它们很自然在某种程度上忽视了单线程的性能,只要愿意它们可以用它们能承受的时间和精力去研究可以跑尽可能的多线程的方案。而那些运行在SUN和IBM机器上的程序,如OLTP数据库和HPC应用程序,天生就是多线程程序。
SUN的Niagra CPU可以同时运行达32个线程,但它不是那种你想用在你的桌面电脑里的CPU。它的单线程性能基本只和早期PIII相当。SUN自己的演示程序也显示Niagra在运行单线程时比一颗没有公开的单线程CPU慢将近4倍—要知道Niagra可是目前顶级的CPU之一了(至少SUN自己希望如此)。
进一步的研究
尽管那些能够提供线程级并行的CPU有其优越的地方,但是如果我们想真正搞明白当前技术市场的走向,我们还应该思考的更多。首先,我们得看看是否漏电真能扼杀“巨无霸”CPU的所有进步,其次我们再来看看一款漏电问题严重的“经典”的CPU,英特尔的Prescott。
如何降低漏电量
漏电量是一个如此严重的问题,以致于在理论上它可以使制造工艺上的任何进步带来的成果化为乌有。如果没有其它相应的防范措施,一个45纳米的Pentium 4的漏电量就可以达到100到150瓦,而它的总功耗将有250瓦之巨。在ROM芯片程序有机会完成开机自检工作时,整个芯片就会因过热而冒烟。
然而,聪明的研究人员已经找到了相应的办法来对付漏电。SOI(绝缘体上外延硅),一种新型的硅材料可以有效地隔断各电极向基体流动的漏电流。然而SOI也使得整个制造工艺更加复杂,这就是AMD的Opteron和Athlon 64的良品率不高的原因。但正因为同样的原因也使得Athlon 64的漏电程度比之英特尔的Prescott要小的多—尽管Athlon 64只比Prescott的晶体管数目只少了20%(1亿6百万对1亿2千5百万)。
而漏电能得以大幅度的控制恐怕要来自另一种新型材料,英特尔称之为“高K”材料。它将用以替换目前使用的二氧化硅栅极电介质(silicon dioxide gate dielectric)。因为这种材料,英特尔预计它将会把漏电量降低100倍左右。这种新技术将会被用于英特尔今后的45纳米技术。
另一项有发展潜力的技术则是“栅偏置”技术。通过使用一些特殊的“睡眠”晶体管,漏电量可以降低90%,同时动态功耗也能有50%甚至更多的降低。
“体偏置”技术使控制晶体管上的电压成为可能。它的原理是当晶体管没有参与工作时,就使它停止工作,而当它需要时,重新使它开始工作,这样也进一步降低了漏电量。其它的如堆叠晶体管等技术也可以用来降低漏电量。
|
|