延续摩尔定律 为多核应用铺路
摩尔定律是架设在规模经济、半导体技术潜能挖掘和应用跟进基础上的经济学定律。先进的半导体材料和工艺、新型多核处理器架构和硅光子等连接技术有望延续这一业界最为著名的定律,但是付出的代价也可能不菲。因为未来处理器设计面临的挑战不但来自于芯片性能的提高,还有日益提升的功耗,而能否成功拓展新型应用则可能成为其中更为关键的因素。
以创始人之一Robert Noyce名字命名的英特尔总部大楼。
6月下旬,在美国加州圣克拉拉英特尔总部召开了一年一度的科研成果开放日(Research @Intel Day,以下简称研发日)。与经常举办的IDF不同,英特尔的研发日展示的大都是在未来几年可能应用的一些技术研发成果。这也决定了会议上展示的内容与微处理器等产品级技术有很大的不同,很多都是应用级层面的,范围也广泛得多。
演示在英特尔位于加州圣克拉拉总部大楼中进行,分为领先硅技术、万亿级计算、探索性研究、移动技术区和以人为本的创新等五大区域,共有50多项。其中有些研究的应用之前并不为外人所知。尽管这些成果当中很多都具有一定的不确定性,即使日后面世也可能跟目前的技术或者原型产品大相径庭,但他们对于英特尔未来处理器和相关技术的走向却具有重要的影响。
计算光刻: EUV的双保险
由于目前业界在EUV(超紫外线)光刻工艺上遇到了比较大的困难,超紫外线光刻工具的量产预计要到22纳米节点以后才有可能,即使这样,一台光刻机成本也要超过7000万美元,大得吓人,因而很多公司纷纷转向193纳米沉浸式光刻技术以向下扩展到22纳米工艺节点。
目前英特尔计划在32nm节点采用193纳米沉浸式光刻技术,而对于更高的22nm节点,除了EUV和双重图形沉浸式光刻两种备选技术以外,英特尔还在考虑一种被称为“计算光刻”的反向光刻技术。
反向光刻与目前普遍采用的光学临近矫正(OPC,集成电路设计和制造流程中对计算要求最高的部分之一)技术不同,它采用了一种基于结果的技术来确定哪些掩模图形单元可以在晶圆表面产生所需要的效果。据称,这一技术可以解决深亚波长时代的许多挑战,甚至有可能取代超紫外线光刻技术。
计算光刻技术的成本和技术风险要小于EUV。研发日上,英特尔展示了据称是采用自己算法的像素化掩模。尽管英特尔官方对22nm节点到底将采用哪种光刻技术还不置可否,但对多种备选技术的并行研发无疑增大了保险系数。
关于万亿级计算的再思考
尽管英特尔的万亿级浮点运算原型芯片(80核)在今年年初即已宣布,但以今天的观点来看,在未来几年这种计算能力的芯片能够面世并规模投入应用还是让人有些难以置信。
不过,英特尔首席技术官贾斯汀在研究日上宣称该处理器(研发代码为 Larrabee)预定于 2010 年发布,但很可能于2009年即可面世。目前从技术上来讲,制造可经济运行的这种芯片并没有什么困难。在研发日上展示的80核原型产品大小为13×22mm,采用65nm工艺制造,运算能力为1万亿次(TFlops)时功耗也仅为40多瓦。从半导体工艺制程上推算,2009~2010年应该是32nm时代。在届时更先进的工艺下,芯片的功耗、性能和成本肯定还将远远好于现在的系统。
惟一的问题是这种产品将有何用处。目前来看,有两个方向的需求是比较明确的。一方面是科学和工程密集计算,还有一类是与视觉效果相关的领域。未来系统对处理器处理能力的利用将逐渐脱离传统的2D和非实时环境。大量实时的物理模拟、高清晰音视频处理、3D效果模拟将耗用大量的处理器计算和传输能力,会给现有的电脑系统带来很大的挑战。
在3D模型和视觉效果方面,许多高级软件已经能够跟上现在多内核芯片的发展。未来还会有更多应用将追随多核和多线程处理器技术的发展,对万亿级处理芯片的需求也将逐渐提升。研发日上展示的一个4路4核系统,以24帧/秒的速度演示复杂的Quake 4画面,竟然是在没有采用任何GPU的情况下做到的。据英特尔研究人员称,16核所产生的光线跟踪场景速度是单核的15.2倍,加速比十分可观。
万亿级计算面临的真正难题可能是来源于内存和I/O带宽方面。单个芯片提供大量处理能力相对比较容易,而通过解决内存和I/O带宽问题使多内核处理器高效工作则要困难得多。换句话说,内存和I/O带宽能够匹配处理核心才是问题的关键。而内存必须要更加靠近处理器,以便减小内存延迟。与系统封装(SIP)和内嵌DRAM方案不同,英特尔采取了将内存芯片堆栈在处理器下方的方式,并应用到了80核原型处理器上(如图1所示)。由于是将SRAM芯片直接堆叠在多核万亿级芯片之上,这样可以获得极大的带宽,并保持了标准的芯片尺寸,更为重要的是这样一来封装无需增加尺寸,可以保证产品尽早推出。
多核: 万亿级计算的实现平台
多核处理器和周边平台技术的发展使个人级的万亿级计算成为可能。但多核处理器的成败将最终取决于适用于万亿级计算的新应用模式的挖掘和普及。同时,无论是针对多核计算的并行编程还是对功耗的控制和管理都面临诸多挑战。
目前英特尔公司在全球有100多个研发项目,专门研究与使用多核处理器的系统相关的硬件和软件挑战。
并行化加速新方法
目前多核处理器面临比较大的一个挑战是如何尽量将程序执行从串行自动转向并行,并尽可能地提高并行程序执行的效率。本次研发日上,记者看到了两项很有意思的技术展示。
一项是Ct语言。Ct语言是英特尔开发的一种新型并行编程模型。对目前广泛使用的C和C++进行了扩展,将任务分配给多个处理器,以适应复杂的并行处理。据英特尔的研究人员表示,Ct使开发人员能够像为一个处理器核编写应用程序一样编程,代码在进行编译和运行的时候进行多核优化,这样就能降低显著程序开发人员编程的难度。Ct语言在物理模拟、音视频处理器等领域将有广阔的应用前景。不过,Ct语言到底给程序开发人员带来怎样的效果和便利之处还有待进一步观察。
另一项是关于猜测并行多线程技术(Speculative Parallel Threading,SPT)的进展。猜测并行多线程技术的研发目标是在万亿级计算平台上加速难以并行化的单线程应用。顾名思义,该技术将串行代码猜测并行化后投机执行。支持硬件或者运行监测软件会验证投机执行的结果,在投机执行失败后发起恢复重新执行。恰巧这个演示项目是英特尔中国研发团队选送的,现场展示的应用是从SPECCPU 2000 int应用gcc中抽取代码片段使用软件事务性内存执行SPT的效果,在4路SMP平台上运行,性能比串行程序高1倍。记者在现场询问了英特尔的技术人员,得到的答复是: 猜测并行多线程目前在普通的串行程序上获得的性能增益将达10%以上。尽管该人员对该技术何时将纳入处理器的硬件电路设计并未给出肯定的答复,但表示英特尔未来可能会推出独立的软件工具以加速旧的串行应用程序。
加速器外骨骼: 异构多核的新对策
众所周知,为了最优化性能和能效,异构多核将是不可避免的——面向应用的优化决定了异构多核的必然性。
异构多核处理器面临着一系列的技术挑战。试想一下,在英特尔架构(IA)内核的周围嵌入了多个加速器内核: 有着不同指令集、讲不同“语言”的处理器可以与现有的软件与
操作系统很好兼容吗?
为了适应异构多核环境的出现,英特尔提出了一种被称为加速器外骨骼(Accelerator Exoskeleton)的技术概念。这种方法的思路是将全部的内核都封装到一个隐蔽的外骨骼当中,这些内核看上去像一连串的常规x86内核,或者就只像一个大的内核一样。而加速器外骨骼就像是一个公共的界面,为使用英特尔架构扩展及带有IA仿真软件工具系列的加速器提供了共享内存多线程编程的编程环境,包括编译器、调试器和相关的性能分析工具。其目的是为了简化异构多内核芯片的编程。
能耗控制: 从处理器到I/O
全球
能源价格的高启使计算机系统的散热逐渐为公众所关注。事实上,经过了多年的发展,无论是服务器、台式电脑还是
笔记本电脑,其系统的功耗值基本稳定在一定的范围内。性能不断增强,但功耗不再上升甚至有所下降。