最近愈来愈多朋友问我关于双核心处理器的事情,大家常问我『双核处理器是不是跑的比64位更快?』、『未来是不是会愈加愈多,有百核处理器出现的可能?』、『双核心处理器是不是最后可以拿来煎蛋用(太热: P)?』
这些问题都很有意思,要回答它们之前,可真得想想怎么描述才好,毕竟计算器的架构也不是那么容易能懂。最后我想对于不是本科的朋友,可能最贴切的比喻就是人脑与交信道路了。
先来聊聊提高频率的作用,频率不断地调高,就好像高速公路的速限不断地往上调升,车子是会跑快一点,不过也愈来愈危险(CPU愈来愈烫、电源消耗愈来愈多)。所以CPU厂调高处理器频率是一个最简单的提升性能方式(其实也不简单),却不是最有效的解决方式。
因此就有人想要把总线的位数提高,(抱歉,我又说了外星人的话)你可以想象一下就是将双线道变成四线道,路变宽了,车子行进速度当然也提高了,这个方法也已经行之有年了,从4位微处理器到8位微处理器、到16位、32位、64位,做的都是类似的事情。
自从去年,超威提出了号称世界第一颗X86的双核心处理器Opetron,英特尔也急着推出双核心处理器Smithfield,并且号称未来『也许』会有上百核心的处理器。这下子可吓坏大家了,包括软件厂商都觉得既然有两核,当然要收两份钱啰,消费者更是觉得:好好的一颗处理器都用不完了,将来还有上百个核心的处理器?
其实双核心处理器虽说能达到所谓提高处理器的性能、省电的目的,但说穿了是为了提供数字家庭的运算中枢,因为数字家庭的时代是多名用户同时使用的系统,为了避免单核心处理器无法负荷同时处理多名用户的应用(如:爸爸在客听看电视、小孩在房间打游乐器、妈妈在房里听MP3音乐),这时若是处理器无法一心二用,尽管它处理得再快,也会面临无法实时处理的窘境。因此双核心处理器的精神就是要让处理器能一心二用,有了两个核心,就能提供一个平行运算的能力。当然处理器还是比不上人脑,人类的大脑、小脑、延脑等等各司其职,并不像双核心处理器是功能相同的对称多重处理器系统(symmetric multiprocessor system;SMP system)架构;不过想想目前已经很常见的DMA(Direct Memory Access;直接内存访问)controller,它的作用不就有点而像是脊柱神经,帮助系统无意识地反映突发状况,减轻大脑的负担吗?
最后要谈谈上百核心的处理器,技术上当然是可行,不过想想一个有上百个脑的生物怪兽,光是自己头脑内部要做出一个判断,就要坐下来好好想想该怎么做,因为协调出一百个脑的意见可不容易。这样应该也就可以解释为什么上百个核心的处理器,终究会因为处理器内部的总线过于拥塞而不可行了。
所以,我的朋友,计算器虽然复杂,但不会比你知道的常识难懂!
(作者为拓墣产业研究所通讯与半导体研究中心主任;联络方式:gary_chen@topology.com.tw)