我这么说你可别介意,运行你个人电脑的微处理器确实笨得很。尽管硅片每秒钟可以运行亿万次,每次却只能做一件事情。从拟人化的语言说就是,微处理器无法一边走路一边嚼口香糖而不摔跟头。
到目前为止,计算机科学家是用一种叫做“分时”(Time Slicing)的技术来应付这种局限性的。例如,处理器先花若干毫秒的时间进行网络冲浪,下一步再刻一张光盘,接着又进行几次运算,让你能玩电子游戏Grand Theft Auto III。
由于以上运作速度快而平稳,所以计算机使用者觉得这一切天衣无缝。计算机好像具有多任务功能,其实并不如此。
然而,分时技术已经不再能够满足用户的需求,不论十几岁的游戏玩家,还是阅历深沉的首席信息官,都要求更快、更便宜的机器。因此,包括英特尔、IBM、SUN微系统、AMD在内的主要微处理器生产厂商无不致力于开发新型芯片,据称它们可以同时行走、嚼口香糖、吹口哨、吐唾沫,一点儿也不会乱了阵脚。
无论对股东还是客户来说,都是事关重大。在这次技术转型中,任何胜过对手一筹的公司,都可望获得丰厚的回报。
就英特尔公司而言,新型芯片的成功可以巩固其作为半导体工业龙头老大的地位。对于IBM,新型芯片的成功将给它们在芯片设计和生产方面的巨额投资带来迟到的回报。至于SUN和AMD,新型芯片的成功可能意味着兴旺,或者是没落,反差极大。
微处理器的多任务功能自1990年代中期已露端倪,当时在西雅图,华盛顿大学计算机科学系的苏珊-艾格斯(Susan Eggers)及其同事开发了他们称为“同步多线程”的技术。
分时技术是在一个严密的循环过程中做一件工作,而SMT处理器能够在任何时间做任何需要完成的工作。它无须等到下一个时段再去改变工作。
当然,说来容易做来难。不仅SMT处理器的设计需要极大的计算机科技的含量,而且计算机的操作系统也必须调整,以便将技术发挥到极致。
此外,要想真正实现多线程工作的性能,计算机所使用的应用程序必须容易划分为子任务或“线程”。
最后这一点的含义是,有些工作天生就比别的工作更具备多线程的可能性。向客户提供网页,而每一个网页可看作一个新的线程,这是SMT处理器的一个最佳应用。而按照什么顺序实施各个线程的工作,一般并不是关键问题。
与此对照,需要按严格顺序处理数字的科学运算就太复杂,不太适宜用SMT运作。
即便如此,艾格斯教授称,在个人用户或企业用户所处的大部分现实环境中,SMT处理器应能提供相当于传统单线程处理器2-4倍的操作能力。
那么这项技术什么时候可以交付使用呢?
实际上已经在使用了。英特尔公司去年发布的最新产品,即用于服务器的Xeon芯片和用于个人计算机的奔腾4芯片,均能同步处理两个线程。
IBM公司最新的PowerPC处理器也具有类似功能,如果客观环境需要,它可以在单线程和多线程之间切换。
但是,对SMT投入最大赌注的,当推Sun公司。该公司称,2006年以前它旨在开发的计算机,每一芯片将包含至少8个处理器,每一处理器能同时运作4个线程。
如果SMT处理器的潜力真有这么大,而且该技术已经面世8年之久,为什么各芯片公司一直等到现在才开始在其处理器中采用同步多线程技术呢?
一个答案是,由于美国数字设备公司(DEC)的衰败,计算机业从此丧失了一个最热衷SMT技术的厂商。1990年代中期,DEC的工程师们曾与华盛顿大学艾格斯小组密切合作,计划开发公司的下一代Alpha处理器——主要用于Unix服务器,出售给企业用户,每一处理器可同时包容8个线程。
1998年DEC被康柏收购,而康柏去年又被惠普收购。康柏和惠普两家公司都决定放弃进一步发展Alpha处理器的生产线,而宁愿此后从英特尔公司购买微处理器。




