当摩尔定律(Moore’s Law)、登纳德缩放定律(Dennard Scaling)等一系列半导体规律逐渐失效时,设计面向未来的计算机系统需要我们改变旧有的观念。65年以来,计算机体系结构以惊人的发展速度历经了四个时代,最终来到了当前第五个时代的开端。这65年里的巨大进步使得计算机的性能得到了不可思议的提升。单单在过去的40年,微处理器的性能就提高了106之多,整整快了100万倍。这来源于一系列架构层面的创新。第一,系统架构由8比特、16比特变宽到64比特;第二,指令级并行度提高了一个数量级;第三,多核开始出现,工程师可以在一个芯片上实现多个处理器核,以获得更高性能。同时,在这 65年中,电路的时钟频率也提高了1000余倍,这得益于底层半导体工艺技术的革新。摩尔定律成功预言了晶体管数量的增长,每18至24个月翻一番;登纳德缩放定律表明每个晶体管的功耗会随着晶体管数量的增长而降低,从而实现在算力提升的同时,单次计算的能耗反而可以下降。不幸的是,这两个重要的规律目前都开始渐渐失效了。

计算机结构化的发展历史(计算机体系结构发展的四个时代介绍)(1)

过去65年间计算机经历的四个时代

回顾计算机系统发展史上的各个时代,最早的时候,每个计算机模型甚至每台计算机都不相同(第一代)。IBM360的出现改变 了这一情况,它开始采用中小规模的集成电路,使我们能够建造大型机、小型机以及后来的超级计算机(第二代)。但是这些系统的实现成本高昂,导致它们逐步退出历史舞台,被微处理器所取代。得益于摩尔定律带来的晶体管规模增长,微处理器逐渐 具备了更强大的功能能更好地挖掘出指令级并行,性能与效率得以提升。RISC和CISC(复杂指令集计算机,Complex Instruction Set Computers)架构也是在这一时期被提出并得到发展,使微处理器的性能越来越强(第三代)。然而有一天,指令级并行的效果逼近上限,设计师开始关注多核微处理器:在同一芯片上实现多个独立计算核心以持续提高性能(第四代)。当前,由于登纳德缩放定律的结束和摩尔定律的减缓,第四个时代也即将终结。

从20世纪80年代中期至21世纪初,处理器性能以每年52%的速度增长。与之相对的是,在过去的五六年中仅仅取得了每年 3.5%的缓慢增速。摩尔定律的减缓只能解释其中一部分原因。如果我们根据戈登·摩尔1975年的预测做出外推,所应达到的晶体管数量与实际情况之间相差了一个数量级。但是,晶体管的总体数量仍然实现了100万倍的增长。在100万倍的基础上仅仅相差一个数量级,其实并不是一个巨大的差距,但这一差距正在慢慢变大。同时,由于晶体管的制造成本也在增加,单个晶体管的平均成本的降低速度正在变缓。因此,这仍然是一个现实存在的挑战。

计算机结构化的发展历史(计算机体系结构发展的四个时代介绍)(2)

单核处理器性能趋势

另一个更大的挑战在于登纳德缩放定律。登纳德缩放让我们能够在维持同等能耗的情况下持续提高性能。但自从2007年开始,这一缩放效应开始变缓,出现了几次阶跃。直至2012年,每平方纳米的功耗开始快速升高,导致能耗增大,效率下降。能效是一个非常重要的指标。过去20年,能效对于各个层面应用的重要性与日俱增。不论在移动端和物联网应用上,还是在大规模的云计算数据中心中,能效都成为了一个至关重要的因素。例如,在大规模数据中心中,除了计算机系统本身,制冷设施也会消耗能量,使功耗成为了数据中心里 第二大成本因素。另一方面,由于处理器的散热目前已经达到了极限,我们现在不得不采用一些在以前看来不可想象的技术:芯片会自动关闭一些功能来避免过热。即使有更好的封装技术,散热能力和电池容量仍会成为能效的瓶颈。为了提高能效,我们需要降低功耗,或者在不增加功耗的条件下提升性能。

计算机结构化的发展历史(计算机体系结构发展的四个时代介绍)(3)

半导体工艺、能耗与登纳德缩放

事实上,真正终结了之前几个时代的原因正是 我们达到了能效的极限。2005年左右,单核处理器“榨干”了指令级并行,达到了其效率上限。指令级并行的终结开启了第四个时代,在多核处理器上由程序员显式指定并行机会。当然,即使是在多核处理器上,由于阿姆达尔定律的制约,我们永远也无法达到完全理想的高并行效率。这对于提升处理器能效是一个非常严峻的限制。于是,我们看到多核通用处理器的发展也开始碰壁。设想一个类比的情况,缓存是计算机系统中最为重要的技术之一。然而,如果我们不断增大缓存的容量,最终我们的性能收益会逐步递减,但功耗却会持续不断地增加。

,