扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
“我们现在处于一场革命的开始,一场如何构建计算机和大型计算机的革命的开始。这包括硬件的变革,即在硬件的建设中,如何利用加速器提升硬件的并行计算能力;同时,这场革命不光是硬件的变革,还牵扯到软件的变革,如何通过软件充分发挥硬件中并行和加速器能力,让‘混血系统’(hybrid system)中的加速器和其它芯片更好协作。” 在最近北京举行的IBM-中国国家网格Cell/B.E.研讨会期间,IBM下一代计算系统和技术杰出工程师Robert Guernsey博士表示。
7月末,IBM和中国科学院(CAS)计算机网络信息中心联合在京举行了IBM-中国国家网格Cell/B.E.研讨会。双方就基于Cell/B.E.(Cell Broadband Engine)的IBM BladeCenter QS20刀片系统在中国国家网格(CNGrid)的成功应用,以及目前高性能计算领域的最新进展和发展趋势进行了研讨。
基于Power架构的Cell/B.E. 最初是IBM、索尼和东芝为游戏主机而开发的。IBM BladeCenter QS20是一种基于Cell/B.E.的刀片系统,专为那些准备从Cell/B.E.处理器的高性能计算力以及运行图形密集型应用的独特能力中受益的公司而设计。QS20集成了7个刀片共14个Cell处理器,最高性能超过了2.8TFLOPS——相当于每秒钟完成2.8万亿次浮点运算。
2006年10月,中国科学院计算机网络信息中心和IBM启动了为CNGrid提供基于Cell/B.E.的刀片服务器计算节点的项目,并鼓励开发各种能够充分利用其独特性能的应用。今年4月,国内第一台基于Cell/B.E.的刀片服务器系统开始在位于北京的中国科学院超级计算中心投入运行。
目前,这一系统已经能够对地震预报(Earthquake Prediction)、分子动态仿真(Molecular Dynamics Simulation),以及MPEG2代码转换机(MPEG2 Transcoder)等应用进行演示,Cell/B.E.多核并行处理技术的能力和性能在这些应用演示中得到了充分的展现。IBM的工作人员介绍说,与传统的x86处理器相比,地震预报和分子动态仿真在Cell处理器上的运行速度分别提升了37.7倍和21.5倍。
摩尔定律已“死”,架构创新提升硬件性能
在IBM看来,摩尔定律(moore's law)代表的工艺进步已接近极限,使得硬件产业需要在加速器、多核和SoC等方面实现架构创新,以继续提升硬件系统性能。“摩尔定律已死(moore's law is over),对不起,对不起,实际上,摩尔定律还没有死,让我来仔细解释一下。” Guernsey博士笑道。
他解释说,过去几十年来,我们让芯片变快的方法是让晶体管越来越小,但是现在让芯片变快非常困难,因为晶体管越小伴随漏电的问题越严重,现在我们正接近临界点。因此现在让芯片的频率变快越来越不现实,因为会有更大的功耗。事实上,摩尔定律并不是讲芯片的速度越来越快,而是指它的密度每18个月或者24个月翻倍,晶体管密度仍然继续翻倍,但是步伐也开始减慢,可能需要36个月翻倍。在芯片上集成更多的晶体管仍是可能的,但这也快接近终点了,越来越困难。今天看到Cell处理器是90nm的,下次看到的时候可能是45nm,再下去就是32nm的,每到一个新的工艺节点,就可以集成更多的晶体管。但是22nm是一个问题,太昂贵了,所以再过10-15年我们做到22nm的时候,就很难再往下走了。
IBM认为,在工艺进步面临极限时,为了持续提升硬件系统性能,就必须在架构上进行创新,而以cell处理器为代表的加速器、多核和SoC就是未来的发展方向。“计算世界或者说硬件世界正在改变,它正在发生重大的转变,主要是因为功耗问题。我认为未来不可避免的在高性能计算会出现一种‘混血系统’(hybrid system),我们的Cell处理器和传统的通用处理器能够一起合作提供很强的计算能力,就是一个很好的例子。”IBM中国技术学院院长John Turek博士表示。
Robert Guernsey:我们现在处于一场如何构建高性能计算能力的革命的开始
与传统处理器不同的是,Cell处理器是一个9核处理器,拥有8个协同处理单元以及1个基于Power架构的核心,频率达3.2GHz,可在很多计算密集型应用中为客户提供强大的性能。在初始硬件测试中,Cell处理器的最高性能超过了200 GFLOPS——相当于每秒钟完成2,000亿次浮点运算。在研讨会现场,IBM的工作人员演示了MPEG2转换应用,采用一个Cell处理器,其中一个协处理器实现MPEG2解码,另外7个协处理器可支持7路H.264标清编码。据介绍,已有视频监控厂商非常感兴趣,希望用它来取代目前昂贵的FPGA和DSP。
除了应用于众所周知的索尼PS3外,Cell处理器还被用于IBM刀片系统并被众多机构用于构建超级计算机,应用领域也扩展到了医疗影像、航空航天、防务、数字动画、通信以及石油和天然气等需要高性能计算力以及运行图形密集型的应用。
例如,IBM将为美国能源部设计名为“Roadrunner”的混血超级计算机,这台将于今年底交付的超级计算机将使用超过1.6万个AMD Opteron处理器内核以及超过1.6万个Cell处理器,最高性能超过了每秒钟1,600万亿次计算(1.6 petaflops)。“Roadrunner”的混血设计将允许系统对复杂的数学公式进行分解,然后将分解后的各组成部分发送到能够以最高效率对其进行处理的系统。典型的计算流程——文件IO和通信活动将由 AMD Opteron处理器进行处理,而更加复杂和重复性的工作(传统上会占用超级计算机大部分资源的任务)将由超过1.6万个Cell处理器进行处理。
IBM的Oliver Retting表示,事实上,IBM并不孤单,AMD和nVIDIA都在走类似cell处理器这种发展路线,即将CPU和GPU(图形处理器)集成。“总之,现在通过提升频率以提高速度已经很难了,但是你可以增加处理器的个数,这就需要更多的软件和编程”。
正如Guernsey博士所言,这场高性能计算革命不仅是硬件的革命,也是软件的革命。事实上,缺少通用的开发和编程环境,也是目前Cell处理器的不足:一是应用移植比较难;二是不能够完全发挥Cell处理器的性能。
从事软件开发的Turek博士笑道,过去系统的复杂性隐藏在硬件(芯片)里,所以我觉得软件很容易,硬件很难。然而如果现在我们把软件应用的数量和硬件的结构来对比的话,我们会发现硬件结构的个数远远比不上软件应用的数量。正如Guernsey博士所说,物理上的特性很难隐藏,很多物理上的特性造成了芯片复杂性必须在软件里面体现出来。
他进一步指出,虽然最经济的方法是将复杂性隐藏在硬件层,但由于不同应用有不同的特点,通常应用的复杂性会隐藏在不同层,例如网络数据处理就是很简单的并行处理,而医学图像处理和分析就非常复杂,对于IBM来说,就是要复杂性往下压,并解决复杂性中的共同问题,简化客户应用层面的开发工作。
John Turek:“混血系统”是历史的必然,软件和硬件同等复杂和重要
Turek博士介绍说,“这样的‘混血系统’是历史的必然,最大的挑战是在不同的行业我们要用不同的编程模式来应对应用编程的需要,Rapidmind就是这样一个工具。我们会把更多的工具放到我们的工具包里,提供更完整的解决方案,帮助大家把更多的应用移植到我们平台上。我们正在建造两个框架(framework),一个是DLC,另一个ALF是在中国开发的。”
Guernsey博士也指出,目前在Cell处理器上开发应用确实要花很多功夫,但这是值得的。他介绍说,在应用开发上,如要更快地把应用迁移过来的话,IBM有一些合作伙伴能开放一些加速应用迁移的工具。但他强调说:“如果要把Cell的性能发挥得淋漓尽致的话,你就可以用一个比较原始的方法来编程,把编程的每一种技能都用上。”
不过,在如何充分发挥Cell处理器性能的问题上,从事硬件的Guernsey博士和从事软件的Turek观点不一样,Guernsey博士认为需要原始编程方法,而Turek则看好高级语言。Turek博士表示:“我认为这样的框架对于性能是有帮助的,能够提升芯片的性能。我们在开始有计算机的时候,我们唯一编程的方法就是机器语言,那个时候我们认为不用机器语言就不能使机器处理更快,也就是说我不能用高级语言作高性能计算。我们后来发现当应用越来越大的时候,用高级的编程语言能够更加有效把任务变成一个可执行的应用,而且比用机器语言所编译出来的更快。”
他举例说,我们有好几个案例是使用ALF框架开发的,我们发现用ALF编译的东西运行更快,不过这不是一个通用的情况,是几个特殊的例子。可是我很乐观地相信,当框架越来越完善的时候,它能够将我们应用快速部署在芯片上。这两个框架未来不仅仅能够在Cell芯片上应用,也能在“混血”系统上发挥功效,所以我们现在的工作就是建设这个框架,确认这个框架能够有效的使用。
Cell处理器的路线图和应用方向
研讨会上,IBM还简介了Cell处理器的路线图,从目前的90纳米产品到65纳米和45纳米产品。IBM将在2010年推出45纳米SOI工艺的Cell处理器,它将集成2个PowerPC核和32个协处理器,性能超过1TFLOPS(相当于每秒钟完成1万亿次浮点运算)。
为了简化客户开发工作,除了芯片路线图外,IBM也有软件和工具路线图。即在发布每一代Cell处理器的同时,也会发布新的工具包。特别值得关注的是,除了持续提升高性能Cell处理器的性能外,IBM还将在未来2年内发布65纳米工艺的低功耗版本Cell处理器。不过,IBM没有透露具体情况。
由于Cell处理器的超强计算能力,它可以用作特定应用加速器或任务/功能卸载(function offload),具体包括四大类应用:一是游戏机,如索尼PS3;二是高性能嵌入式应用,发挥类似高性能DSP或FPGA的作用;三是大型系统(larger system),如影像获取、识别和追踪等;四是高性能计算机(HPC)和工业应用,如IBM刀片系统/超级计算机。
Guernsey博士介绍说,与POWER等通用芯片不同的是,Cell是专用芯片,它们可以一起搭建不同的平台,各司其职。例如,如果要检查一条生产线,从生产线的图像中找出问题所在,Cell的能力比POWER强很多,但是当把数据取出来进行分析处理的时候,Cell就不如POWER了,这个时候就应该让POWER作数据处理的工作,另外的例子就是数字视频监控。所以很多时候需要两种不同芯片协作才能最有效地完成用户的要求的。
“如何让处理器能够在60w的功耗下达到520 GFLOPS的性能?Cell可以做到”,IBM的Oliver Retting总结说:“Cell处理器比CPU更有效率,比GPU(图像处理器)的可编程性更好”。