架构创新 浪潮加入桌面HPC战团
2009-02-24刘洪宇
刘洪宇
以5万元价格出售万亿次桌面HPC,浪潮发动了HPC普及化的攻势。而在混合架构的技术尝试背后,浪潮也为冲击未来高端高性能计算埋下了伏笔。
对于HPC来说,5万元的价格并不高,万亿次的性能又着实不低,而二者就结合在一台台式机大小的桌面设备当中,它能否一石激起千层浪?3月2日,这台名为“倚天”的桌面HPC在京发布,拉开了浪潮推动HPC普及的大幕。
走协同加速路线
高性能计算市场呈金字塔型分布,有调查数据显示,塔基部分为64节点以下、计算能力小于4万亿次的集群,这占据了中国当前高性能市场75%左右的市场份额,用户主要集中在教育、科研等领域。如果涵盖被价格门槛阻隔在外的潜在客户,市场规模还将进一步扩大。
曙光和SGI也曾推出个人超级计算机(PHPC),目标定位与浪潮“倚天”相近,聚焦于高性能市场规模最大的塔基部分,但技术路线却有所不同。曙光和SGI都选择了传统的集群技术路线,尤其是曙光PHPC,本身就是由曙光5000A的单计算节点衍生而来的。
浪潮“倚天”则选择了走“CPU+GPU”的技术路线,由英特尔最新一代CPU专职负责逻辑选择、判断跳转和I/O通信计算,NVIDIA Tesla GPU则专职负责计算密集型、高度并行的计算任务。通过协同加速架构,CPU和GPU计算资源合理分配,同时基于高速I/O交换技术和英特尔QPI技术,使得CPU和GPU之间更加有效协同计算,实现了单机性能突破,峰值计算能力最大可达4万亿次/秒。
从技术角度来看,在某些更大规模的HPC当中,采用FPGA、GPU甚至CELL、龙芯等处理器进行某些特定的应用加速并不鲜见,比如日本东京大学改进了计算架构,加入Tesla GPU加速,使其HPC的性能快速跃升至全球TOP500第29名。但将GPU加速理念和架构用于“倚天”这类单机高性能计算,尚属首次。
浪潮集团技术总监胡雷钧认为,协同计算加速架构并非否定传统技术路线,而是补充和辅助。通过不同计算单元的分工合作与优势互补,基于混合架构的浪潮“倚天”更专注于计算密集型应用。在这类应用中,它相比基于通用处理器的集群系统的效果更好,但并非要在各个领域都进行取代。而从长远的技术规划角度来看,协同加速也将是未来HPC发展中非常值得关注的趋势。
“倚天”适合谁使用
在传统集群架构下,系统计算性能的提升主要通过叠加计算节点实现,这就给空间、采购成本、管理性以及能耗开支等方面都带来了挑战。“倚天”的出现,为高校、中小型科研所、企业研发中心使用“万亿次HPC”降低了门槛。
“倚天”是“浪潮高效能服务器和存储技术国家重点实验室”的重要研发成果。据浪潮集团高性能服务器产品部总经理刘军介绍,“倚天”的设计本身就是从用户需求调研出发的,表现出“两快三省”的特点:“快”体现在运行速度和部署两方面,“倚天”可以通过日常电源接入,无须专门机房和维护人员;“省”体现在成本、空间和电费上,这台体积与噪音都与台式机相当的桌面HPC可直接放置在办公桌上,5万元的售价明显低于同样性能的集群产品,功率仅为1000W。
浪潮“倚天”以低成本解决了成本与计算峰值的矛盾,但是否因为架构不同,适用领域会较为狭窄呢?胡雷钧表示,基于通用处理器做的集群产品应用面可能会广一些,但是也不是说它就覆盖了绝大多数应用,而GPU只覆盖少量应用。从实际应用来看,GPU能覆盖的应用可以达到50%左右,尤其是在科研领域、研发领域。“只能说这类产品有它的特定优势面,它并不是窄众产品。”
据刘军介绍,从应用领域来看,浪潮“倚天”适用于经过图形加速后提升效果明显的生命科学、天体物理、量子化学研究、资源勘探、机械制造、汽车设计、金融模拟、医学成像、视频和音频解码、图形渲染等应用领域。例如渲染4D电影《圆明园》的10分钟动漫视频,将圆明园西洋楼的每一个建筑物的点、线、面都完整展现出来,渲染任务达15000帧,同时质量要求很高,如果使用浪潮“倚天”,只需十几个小时就能完成,且渲染质量上乘。
它与集群配合使用,还可以有效提高工作效率。中科院北京基因组研究所就是“倚天”的试用单位,在实际应用中取得了很好的效果。于军副所长认为,“倚天”能有效缓解基因研究所计算资源紧张、平台使用拥挤的现状,从共享资源的“公共汽车模式”,到每个科学家都可以单独使用的“小汽车模式”,研发效率自然会提升。
此外,由于“倚天”体积小,还可以满足对移动性、现场时效性要求较高的应用需求,如在诊断现场得出医学成像结果等,而这类优势是传统集群难以比拟的。
编程并非大问题
作为一种高端产品,高性能计算技术有着相对独立的应用环境,包括重新编程、语言编译、应用开发移植等。硬件仅仅是平台,应用才是平台上的舞者,协同加速架构意味着一种新的编程体系和应用开发环境,势必引发编程难题。
出席发布会的NVIDIA中国区总经理张建中表示,为了帮助开发人员充分利用“CPU+GPU”架构,NVIDIA发布了CUDA架构,它可以支持所有多核系统、多种常用编程语言,基于CUDA架构发布的程序可以控制GPU和CPU计算,这就为广大应用开发人员和科研科技工作者提供了易用性较好的平台。CUDA架构上目前已经有几百种应用,很多行业都开始采用GPU加速。
目前从国内现状来看,CUDA编程普及一定是长期的发展过程。胡雷钧说,七八年前,基于MPI写集群程序的程序员也很少,但集群是先进模式,应用就逐渐丰富起来了,现在的情形与当年是类似的。“推力和阻力一定是都有的,我觉得现在往前的推力比阻力要大。对于没有并行编程经验的用户来讲,学MPI和学CUDA没有太大区别,用户一定是选最有效率的。” 胡雷钧认为,现在大部分用户并不是已经充分利用好了集群系统,很多程序并没有真正的实现。对他们来说,主要问题是怎样把原有串行程序改造成并行,而不是从集群迁移到混合架构上来。这个改造过程无论应用哪种HPC都需要进行。
硬件应用双驱动
推动HPC发展,一方面要培育用户的使用习惯,另一方面要提升HPC应用的易用性和亲和度。拥有用户需求的理解和应用服务能力、具有丰富厂商合作资源的高性能计算设备厂商,是这一环节的关键。
以“倚天”为开端,浪潮酝酿的HPC应用推广战役已经打响,这将包括用户培训、编程工具开发、与商业应用软件商合作进行软件移植优化等一系列具体举措。浪潮集团高级副总裁王恩东表示,浪潮将不遗余力加大高性能应用软件的移植和开发,真正让中国用户“用得好、用得上”高性能平台,才是浪潮HPC发展的硬道理。
据了解,浪潮将按客户应用进行行业细分,组建专门的HPC开发团队,基于CPU+GPU的应用,帮助用户开展性能优化,包括从算法改进到多核优化等。同时,浪潮还在北京和济南建设了性能达100万亿次的协同计算平台,免费向客户开放作为GPU开发测试平台,加速应用迁移,从硬件平台、应用合作、技术服务、软件平台四个方面推进HPC产业进步。