i社区用户: 密码:
搜索:
首页| 资讯| 信息化| 视频| 专题| 创业| 技术天地| 企业博客| 职场| 周报全文| 方案中心 |电子杂志
商城| 市场会展| Blog| i社区| 社区联盟| RSS| 直播 | 发行| wiki |i| 下载| 英才招聘|CIO文库
IT两会 | 互联网年会
产品中心| 笔记本|台式机| DIY|数码| 服务器|网络通信| 手机|软件|显示器|信息安全|存储|组网| 动漫

推动HPC的平民化


■ 本报记者 邹大斌



与计算机的硬件技术日新月异相比,软件技术已经远远落后,在超级计算机上这个问题更为突出。

高性能计算(High Performance Computing,HPC)是计算机科学的一个重要分支,这个专门研究并行算法和开发相关软件的学科,近几年来随着超级计算机应用的普及越来越受到重视,特别是多核处理器的出现,以及微软推出WCCS(Windows Compute Cluster Server 2003)产品线加入到这一阵营,HPC引起了人们的普遍关注。基于此,11月25日至26日在北京举行的第三届全国高性能算法软件研究开发研讨会备受关注也就在情理之中。这个由中国软件行业协会数学软件分会举办的学术研讨会不仅有国内近百名学者的参加,同时引来包括HP、IBM、SGI、Sun、曙光、联想、浪潮、宝德、蚬壳星盈等国内外几乎所有的服务器制造商和Intel、AMD等处理器制造商的参与。会上,关于中国超级计算机TOP100排行榜、多核时代对于软件的挑战、如何科学地评测超级计算机等话题更是引起了与会者的广泛讨论。

超级计算机性能进入平台期

每年在全国高性能算法软件研究开发研讨会之前发布的中国超级计算机性能TOP100排行榜已经成为一个惯例,这个从2002年开始在中科院软件所首席研究员孙家昶等人带领下,由张云泉副研究员负责具体实施,以中国软件行业协会数学软件分会的名义发布的每年一度对中国TOP100高性能计算机系统的排名,已经发布了五届。5年来,TOP100的权威性和影响力正在逐步提升。今年这个榜单透露出来的信息是,我国超级计算机的性能水平普遍迅速提升,超过预期,但第一名的性能没有变化,开始进入平台发展期。

据榜单发布者的统计,中国目前高性能计算的总性能达到191.55Tflops,是2005年总性能的1.91倍(2005年为100.55Tflops)。中国TOP100排行榜第一名仍然是IBM的机器,其Linpack性能为10.31Tflops,榜单中有81台(2005年28台)机器的Linpack性能达到了1Tflops以上。国外机器占据了TOP10的大部分名次,前10名中5台由IBM制造,HP有 3台,曙光和联想各一台。

中国TOP100中,有99个系统的峰值达到了1TFlops,而2005年有47台。仍然有70个(2005年为70个)系统是机群,其中有26个系统是刀片机群,从这一点来看,机群仍然占主导地位,但没有继续增加,而刀片机群增加迅速。值得注意的是,性能比较高的系统,往往采用机群体系结构。

多核时代对软件的挑战

会上多核给软件带来的挑战是大家重点讨论的一个话题。今年以来,多核CPU的热潮一浪高过一浪,Intel已经推出了4核的CPU,而AMD也已经宣布明年会推出4核的CPU,很明显,很快基于多核的计算机就会出现在我们周围。然而,与硬件技术的进步,软件技术并没有太大的突破,换而言之,软件还远远没有做好准备。而只有软件能够充分利用多核处理器的特性时,多核处理器的优势才能体现。相关研究显示,现有的软件只能在集成两到3个内核、每个内核只有两个线程的处理器上发挥优势。

清华大学计算机系副教授陈文光认为,多核的出现给软件的设计带来许多新的特性。比如,多核使得CPU的处理能力大大增加,延迟更小,在经济上也更便宜,这是有利的一面。但是,由于多核处理器软件开发商面临技术和商业的问题,软件界缺少为多核处理器进行高效编程和优化的工具,开发人员也缺乏开发并行应用的技巧,大部分多核CPU的处理能力没有利用。同时,由于多核CPU的价格很便宜,所以很多用户并不太关心这个问题。这些影响着多核CPU的潜能发挥。

实际上,多核处理器对软件设计、开发和调试的挑战几乎是全方位的,从支持多核的操作系统到编程模型、编译器、开发和调试工具等。比如,一个最主要的挑战是如何将软件应用映射到日益复杂的硬件中,即建立新型编程模型。多核处理器需要一个抽象层来管理并行机制,允许重新定向应用,分配负载并管理功率,需要一个应能对程序员隐藏尽可能多硬件细节的编程模型。

专家呼吁加快用户的培养

众所周知,超级计算机的贵族身份正在逐渐退去,已经突破了传统科学工程计算的束缚,触角延伸到更多的行业应用领域,如汽车、航空航天器的设计制造、地震资料处理、游戏、搜索服务、数据库、生物信息、金融保险等。

超级计算机应用日益广泛意味着更多的用户参与进来,与科学计算的使用者大多对HPC具有比较全面和专业的认识不同,普通行业用户有所欠缺。超级计算机的软件开发需要采用不同的方法,传统的程序在多处理器上不能直接获得加速。解决这个问题最理想的途径是使用多处理器自动并行编译器,把串行程序自动转换为并行程序,但这条路目前走得很不理想;另外一条目前行之有效的路是采用MPI或OpenMP等并行编程环境对串行程序进行手工并行化改造,但这些技能是绝大多数软件开发者所不具备的。

同时,超级计算机大多是专有系统,针对特定应用研制,应用之间的可借鉴性较少,因此软件的开发和维护都需使用者自己投入,这个投入往往是很大的,很多用户在投入上很不够。孙家昶研究员指出,重硬轻软是我国高性能计算机应用存在已久的问题,今天,在高性能应用软件上投入的不足严重制约了超级计算机的应用,大部分仅仅发挥出了不到10%的效率。他呼吁从各级政府到用户都要重视高性能应用软件的开发。

另外,用户要正确认识Linpack测试。尽管目前国际上的TOP500和国内TOP 100都是采用Linpack测试,但是必须认识到Linpack作为一种测试超级计算机并行计算性能的基准程序,主要是求解稠密线性代数方程组,其测试主要集中在CPU的处理上,而对通信方面的测试就很不足。所以,不要把它作为选择超级计算机的惟一指标。会上,有不少学者提出借鉴HPC Challenge Benchmark,也就是向综合评价方式探索。但采用这种多Benchmark评价方式的问题在于如何对测试结果进行综合给出最终的排名,目前还没有找到一种比Linpack更好而且能普遍接受的方法。

(计算机世界报 2006年12月04日 第47期 B29)


  发表评论  您的姓名   您的Email   发布  
   


周报全文频道联系方式:010-68130909
【关于我们】  【广告服务】  【周报发行】  【投稿指南】  【投稿声明】  【联系方式】  【法律声明】
  【媒体手册】  【编读往来】  
Copyright© ccw.com.cn,All rights reserved
中国计算机世界出版服务公司版权所有