IA+Linux模式将成构建高性能集群系统主流

日期: 2008-04-14 作者:姜波 来源:TechTarget中国

  “行业的需求驱动带来了高性能集群系统在整个科学计算领域的繁荣,而这种繁荣将继续下去!”这是IBM的技术人员在接受记者采访时对目前高性能集群市场的总结。一语中的!HP、IBM和浪潮、联想、曙光这些有代表性的厂商在这个领域所做出的努力也是因为这样的快速增长的需求。于是,在这样的循环推动下,高性能集群迈开了一统科学计算领域的大步!


  思考之一:需求拉动


  为了制作这次的专题,记者采访了HP、IBM、浪潮、联想、曙光几家代表性的厂商,有一个共识是: 科学计算领域许多新需求的拉动给高性能集群系统带来了繁荣。国际上,以前很多科学计算范畴内的应用都没有采用高性能集群系统,可是现在都要采用具有相当计算能力的集群系统来处理,比如制药行业,以前大量的药品药性的分析工作都要用实验来解决,可现在都要用计算机系统来模拟; 比如多媒体制作、电影特技制作的行业,他们需要集群系统来制作复杂的多媒体应用; 比如生命科学行业,需要大型的集群系统来进行基因测序; 比如航空航天行业、汽车行业需要做大量的碰撞模拟等计算。在国内,比较明显的新需求是一些高校,在数学、力学等方面的研究课题需要这种规模化的集群系统做大量的分析和计算,EPA(电子领域的辅助设计)、图像分析等领域也是对高性能集群系统有很大需求的领域。


  具有高性能的计算能力是科学计算领域对于计算机系统的要求,在一台具有数颗CPU的计算系统无法满足越来越大量的计算要求时,人们自然想到了用集群这种方式来构建大型的具有数十个甚至上百个节点,而每个节点又具有数颗CPU的可扩展的集群系统。国际上的权威人士将集群(Cluster)定义为“一组完整的计算机互联,作为统一的计算资源一起工作,并有一台机器的印象”,其中,所谓完整的计算机是指离开Cluster仍能独立工作的计算机。这样的系统在国外的某些领域早已经开始使用,像美国一些著名的国家计算中心,早就开始使用利用SMP小型机构建的集群系统来做一些大计算量的研究工作,只不过这样的计算领域对我们来说太遥远,应用面太窄,所以我们以前并没有注意过,而且,在国内,由于一些国际上对高性能计算工具的诸多限制因素以及国内这方面的技术实力差距,导致我们对其了解和接触得非常少,直到这些新的应用需求的出现,驱动了厂商们对于高性能集群的注意,并开始研究高性能集群系统在更广泛的领域的应用。近几年,以浪潮、联想、曙光为代表的国内服务器厂商在气象云图分析等领域取得了很多研究成果,一些专门针对气象领域的集群产品已经在全国数家气象站和研究机构使用,甚至在水稻基因测序这样复杂的非常大数据量的工作中,国产的集群产品也发挥了不可磨灭的功劳。现在,他们正努力地将应用范围扩展,像联想正在向地震资料分析领域拓展,浪潮将眼光放在了图像处理、EPA等领域,曙光正在研制更高的计算能力的集群产品曙光4000,同时与高校的大型计算中心合作,研究计算网格。看到国内在高性能集群系统方面技术实力的倍增,国际上开始复苏了对中国的关注,HP、IBM这样在集群领域具有领先实力的厂商也纷纷将目光聚集到了高性能集群产品上面,他们的关注给国内这个市场增添了更加繁荣的细胞。


  思考之二:集群系统是趋势


  高性能集群系统目前在国内的应用领域主要集中在气象云图分析和石油勘探的领域。浪潮的技术总监胡雷钧说,因为这样的应用对于高性能集群系统来说进入门槛比较低,所以目前这些领域都采用了国内厂商构建的集群系统。虽然对比要处理大量并发的小问题的用于商业计算的高可用性集群来说,高性能集群实现起来要简单一些,但实际上,高性能集群的构建中仍有许多技术上的难点,尤其是高性能集群系统往往是针对一个很独特的科学计算的应用,而对这种应用实现用高性能集群系统来计算,就必须要先对应用建立数学模型,而这样的建模过程需要大量的对于这种应用模式的理解。总结起来,可管理性、集群的监控、并行程序的实现、并行化的效率以及网络实现是构建高性能集群的几个难点。


  这其中,并行化程序的实现就是指特定应用领域的特定应用程序在集群系统上的实现。虽然有诸多的技术实现上的难点,但集群系统本身的优势仍然给了厂商们克服难点、攻克高性能集群的力量。


  目前的应用在科学计算领域的超级服务器的主流体系结构包括: 集群(Cluster)、CC-NUMA和SMP,从理论角度来看,这三种体系结构并不矛盾,现在很多集群服务器是基于SMP节点的集群,结合了SMP和集群体系结构的优势。但在具体项目中,各类体系结构服务器之间的竞争非常明显,因为其产品定位有巨大的重叠。举个例子说,一套价值20万元的基于IA 架构SMP节点集群和一台20万元的RISC小型机,它们能够做的事情几乎是一样的,都可以计算,也都可以做中心服务器,但是集群服务器占有的优势很明显。


  首先撇开一些具体的优势不说,从互联网中心服务器的变化来看,可以清晰地观察到集群结构是中心服务器的发展趋势。90年代以前,中心服务器一般都用大型机(Mainframe),大型机上可以完成一切的应用和服务,用户从终端通过网络完成应用。这种应用模式带来许多的好处: 应用集中、比较好部署、系统监控、管理方便等。但大型机的缺点也是非常明显的,主要是设备昂贵,很难实现高可用解决方案; 非高可用系统在出现故障时,全部应用都受到影响; 操作系统、设备和部件比较专用,用户本身维护困难; 可扩展性不强等。这些缺点中的任何一个都是用户难以接受的。随着PC及其操作系统的普及和Intel CPU的性能和稳定性的不断提高,人们逐渐用PC服务器构成的分布式系统(Distributed System)去代替大型机。分布式系统解决了大型机上面提到的多个缺点,却丢弃了大型机应用的优点,服务器多且杂,不好监控、管理,不好部署。因此综合大型机和分布式系统优势的服务器必将成为趋势,集群系统就是这样的服务器。


  思考之三:IA+Linux描绘高性能集群的神话


  从上面的叙述中,我们可以看到,相比较而言,RISC CPU的SMP服务器(小型机)有点当年大型机的味道,虽然目前用它搭建的分布式系统和机群也有不少,但IA架构的PC集群与价格同档次的小型机相比至少存在下面的几个优势。


  1) 具有非常良好的可扩展性。当服务器不能满足应用需求时,集群的扩展对用户来说是一个一个集群节点(PC 服务器)的形式,投资大约1~5万元之间,而小型机的扩展来说,正常情况下投资应该在20万元左右。这样,用户的扩展能力就受到了限制。从软件的角度看,IA架构的服务器的软件和应用可扩展能力是最强的,其操作系统和应用软件可以有丰富的选择,价格比较便宜; 小型机往往是和厂商的自主软件捆绑,在操作系统和应用上受到严重的限制。


  2) 更好的系统可用性。人们谈到小型机的优势时往往首先提到它的稳定性。单从单个服务器比较的角度来看,小型机的可用性可以达到99.9%,PC服务器大约是99%,似乎验证了这种说法,但PC 集群就不一样了。PC集群是可以构造高可用系统的服务器,因为其本身就具备多个节点,而且这些节点基本是同构的,不需要投资任何硬件成本就可以实现高可用,这样的高可用系统的可靠性达到99.99%,应该说比单个的小型机的可用性更高。而且高可用软件一般来说是集群操作系统的一个模块,不需要用户再投资。当然,小型机也可以构造高可用系统,但其硬件投资和软件投资都将大大超过集群系统。同时,集群高可用和小型机高可用有着重大区别,那就是集群高可用是多机高可用,是不存在冗余的,结合负载均衡的高可用,其性能在一定的节点范围内是随节点机个数线性增长的,而小型机的高可用是双机高可用,其高可用系统从性能上等同单机系统。


  3) 从负载均衡来看,单个小型机不能够实现负载均衡,而集群可以,这样集群系统可以实现更高的应用饱和性能。


  4) 在系统管理员的系统监控和系统管理方面,集群系统也优于小型机系统。通过集群系统的监控软件和管理软件,监控、管理集群的工作量和管理一台普通服务器无异,而且集群的系统管理和监控由于有专门的GUI软件,显得更直观、更傻瓜化。应该说,集群的远程直接管理(非Telnet方式)、远程硬件监控等方式,都是小型机所不具备的,却对管理员有着很大帮助。


  5) 从应用部署的方面看,集群系统优于单个小型机系统。集群系统既可以象单个服务器一样集中部署各个服务,达到高的应用饱和性能和负载均衡的特点,也可以象分布式系统一样分布式地部署服务和应用。在这个方面用户可以根据自身在应用规模、技术实力、应用类型等不同自主选择,甚至可以选择集中、分布应用都有的混合模式,而小型机就不具备这样的条件。虽然基于小型机的分布式系统可以这么做,但用户的投资规模远远超过集群。


  6) 从服务的角度看,集群也优于单个小型机。集群的服务难度大大低于小型机的服务难度,因为PC集群的节点机无论从软件、硬件的角度来看都是用户熟悉的,出现故障时,大部分情况下用户自身就可以恢复,不但缩短了故障恢复时间,也大大减少了用户的维护费用。同时由于集群的硬件部件是市场上可以采购得到的,用户也会因此大大减少维护部件的采购成本。同时加上厂家对集群的规范维护,使得集群的可用性更高。而小型机在这个方面没有优势,部件一般不是通用的,必须从厂家定购,系统管理员必须单独培养,厂家维护的费用非常昂贵。


  上面的分析全面地比较了IA架构的集群系统与RISC架构的小型机,IA架构的集群系统优势比较明显,尤其是当安腾2发布后,基于IA架构的集群更是倍受青睐。HP在前些时候举办的高性能技术运算研讨会上,强力推出了其基于安腾2的高性能集群方案,并从安腾2芯片有利于构建集群系统的角度分析了高性能集群技术的发展必然朝着IA的方向走。HP的高性能技术人员认为,基于安腾2处理器的高性能计算的集群技术将是重要方向,其中最重要的原因之一是,安腾2在设计之初就为大型的科学计算需要的高浮点运算能力和并行化的集群需要考虑了很多。首先,安腾2具有非常高的浮点运算能力,速度非常快,因为在科学运算领域,大多数都是浮点的运算; 第二,采用了显式并行指令运算(EPIC)架构的安腾2,其指令中有3位是用来指示上一条运算指令是不是与下一条指令有相关性,是不是要等上一条指令运行完毕后才能运行下一条,如果没有相关性,则两条指令可同时由不同的CPU节点来处理,这样的方式大大提高了CPU并行运算的效率。基于这两条理由,64位EPIC体系结构的安腾2被寄予了用于HP大节点集群策略的厚望。同时,HP提供了将运行于集群系统之上的串行软件并行化的编译技术,配合这样的硬件结构,进一步提高并行运算的效率。


  曙光公司的机群产品研究部总经理邵宗有也对安腾2在集群系统中的前景充满了信心,虽然这只是他个人的观点,他说: 无论从基准测试结果来看,还是从总拥有成本(TCO)来看,安腾2的前景都是不可估量的,很有可能一统高性能集群系统的天下。


  而从操作系统的角度来看高性能集群系统,Linux集群系统的前景可观。原因有二: 第一,高性能集群系统主要针对大计算量的科学计算,要求多个CPU来完成极强的计算能力,不像针对商业计算的高可靠性集群系统,更多的要求其性能的可靠,Linux不仅具有Unix的可靠与安全,更有着良好的网络通讯性能与成本优势; 第二,选择Unix意味着选择了相对应的硬件,而Linux更灵活一些。


  基于上面的分析,IA+Linux模式构建高性能集群系统,或者更具体地说,是安腾2+Linux是一个普遍被看好的模式。从国内的高性能集群产品来看,有相当一部分是IA+Linux的产品,再加上厂商们对于安腾2和Linux的积极推动,看来这样的发展趋势越来越明朗化。拥有超过10年以上并行计算研究历史的IBM认为,使用IA+Linux架构在同等性能下将大大降低配置和开发成本,使集群系统拥有极高的性价比,在同等投资情况下,整体性能可以达到SP2平台的5到7倍。美国的超级运算应用中心就选用了超过800个节点的配备安腾II芯片的IBM IA群集系统。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

作者

姜波
姜波

相关推荐