浅析HPC体系结构发展之路

     HPC(High Performance Computing)即高性能计算。有别于普通的PC,HPC被广泛应用在科研、金融、国防、能源等对计算性能要求非常高的领域。高性能计算机的体系结构在不断变化,从SMP, MPP, DSM等多处理器系统到集群Cluster,到分布式计算系统,例如网格以及工作站等等,所有这些变化的目的都是为了计算性能的提升。本文就HPC体系结构的发展历程以及趋势作一个简单的分析。


 1 HPC体系结构发展历史的简单回顾

      20世纪70年代出现的向量计算机可以看作是第一代的高性能计算机。通过在计算机中加入向量流水部件,可以大大提高科学计算中向量运算的速度,其中比较著名的有 CDC 系列、CRAY 系列、NEC 的 SX 系列向量机。中国有代表性的是银河1号及中科院计算所的 757计算机。 80 年代初,随着VLSI技术和微处理器的技术的发展,向量机一统天下的格局逐渐被打破。通过多个廉价的微处理器构建的并行化超级计算机开始出现。“性能/价格比”而非单一性能成为衡量高性能计算机系统的重要指标。对称多处理机即SMP系统在这种形式下应运而生,SMP由数目相对较少的微处理器共享物理内存和 I/O总线形成的计算机系统(国内最早基于微处理器的 SMP为曙光 1 号)。SMP与单机系统兼容性好,是单机系统的升级与增强,被广泛应用于商业计算领域。 由于在可扩展性上存在的“先天缺陷”,90年代初期,大规模并行处理(MPP)系统取代SMP开始成为高性能计算机发展的主流。MPP主要由多个微处理器通过高速互联网络构成,每个处理器之间通过消息传递的方式进行通讯和协调。比较有代表性的有TMC 的CM-5, Intel Paragon 等。中国的第一个MPP系统是曙光 1000 计算机。 90 年代中后期的一种趋势是将 SMP的优点和 MPP的扩展能力结合起来,这一趋势发展成后来的 CC-NUMA 结构,即分布式共享内存。每个处理器节点都可以访问到所有其它节点的内存,但访问远程内存需要的延迟相对较大。代表性的系统有 Sequent NUMA-Q, SGI-Cray Origin 等,国内的神威与银河系列等。 在发展 CC-NUMA的同时,集群系统(Cluster)也迅速发展起来。类似MPP 结构,集群系统是由多个微处理器构成的计算机节点通过高速网络互连而成。节点一般是可以单独运行的商品化计算机。由于规模经济成本低的原因,集群系统具有比 MPP更高的性/价比优势。集群系统还继承了MPP系统的编程模型,更进一步加强其竞争优势。代表性的系统是IBM SP2,国内有曙光3000,4000等系列。到 2000 年初集群实际上已经构成了高性能计算机系统的主流。据 2003 年的统计,TOP500 中的MPP(含CC-NUMA)占42%,Cluster占29.8%。 MPP 取代向量机和机群逐步替代MPP这两个进程的背后都是摩尔定律在起作用。高性能计算机体系结构的创新必须与半导体技术和产业发展相结合,否则很难变成主流技术,这也是SIMD系统、阵列机、数据流等新型体系结构没有流行起来的主要原因。


2 HPC的研究现状

      HPC的研究之所以成为全球计算机界竞相逐鹿的领域,源于它对国家发展具有的重大意义:首先就是国家安全,美国在HPC领域的地位至今无人可动摇,从美国以往的HPC计划来看,美国研制超级计算机的首要任务就是为了解决国家安全问题。例如美国能源部的ASCI计划,分别委托 Intel、SGI、IBM、HP 等公司构建超大规模的集群系统,而今年6月最新出炉的TOP500榜单中排名第一的Roadrunner就是由美国能源部(Department of Energy)国家核能安全管理部(National Nuclear Security Administration,NNSA)委托IBM打造,主要用来确保美国核能武器储存量的安全及可靠性。第二是加快科学研究,像日本Riken高性能计算中心和NEC针对专用领域的MDGRAPE-3,用于分析蛋白质分子。第三则是经济发展的需要,这也是我国发展千万亿次超级计算机的主要目的,在未来的网格环境中,像公用计算(Utility Computing)将是主要的计算模式,千万亿次机将在这种环境中发挥作用。 目前高性能计算机体系结构的主流仍然是 MPP和机群技术的进一步发展,通过将更多的处理器连接起来构建更大规模的并行系统。2008年6月,IBM的road runner打破了BLUE GENE/L系列在TOP500中的领先地位,运算速度首次突破1Petaflops(即千万亿次/秒),其所采用的主流系统结构仍然是cluster,它拥有130536个计算核心,包括12960颗Cell引擎的116640个PPE和SPE核心,以及6948颗双核AMD Opteron处理器。Roadrunner是全球第一台采用Cell处理器的混合式超级计算机。此外,Roadrunner首次结合传统的超级计算机处理器以及专为Sony PS3所设计的Cell 芯片,这也就意味着IBM首次将异构计算引入其超级计算机中。异构计算是近年HPC领域与多核一起崛起的新趋势,已经在国际高性能计算领域掀起了又一阵热潮,它被公认为提高HPC性能的有效手段。 在08年六月的这次TOP500排名中,也首次提供了计算机的节能排名。当然这主要是看该系统在运行一个典型HPC应用负载时的情况,而并没有考虑到外部制冷、磁盘、以及其他外部环境带来的能耗影响。进入TOP500前十的计算机中,平均能耗(Power consumption)为1.32 Mwatt,平均能效(power efficiency)为248 Mflop/s/Watt。我们发现在这份新发布的榜单中的系统能耗比以前降低了近10%,能效也有大幅提升。原因我想是因为新技术的应用带来了更低的能耗,而在榜单中那些新旧技术混合的系统指标则大都低于平均能效标准。因此,在今后的计算技术发展趋势中,低能耗应该会成为一个重要的衡量标准。 在HPC的系统结构研究方面,许多国家都在积极进行尝试新的突破。美国 Stanford 大学的Streaming SuperComputer 计划,就尝试采用专门设计的 streaming 处理器来构建超级计算机。一个Streaming 节点中集成了128 个1GHz 的 FPU,一个背板支持 32个节点,32个背板就可以接近 PetaFlops的计算性能,而预计成本只有 4千万美元。Streaming 技术最初的思想来源于专用游戏机的设计中。现有科学计算应用是否能有效移植还有待研究。 网格技术有可能成为实现 PetaFlops的另一条途径。网格是近年来计算机体系结构发展的一个重要方向,其基本思想是通过 Internet 进行资源共享和协同工作。目前连接到 Internet的计算机已经达到 1 亿台以上,通过互联网可能达到的聚合计算潜力是不可估量的。国际上已经有 Globus 等组织为网格环境制定标准和参考实现。但是用网格技术实现 Petaflops 仍需要关键技术上的突破:一方面互联网连接的速度和带宽仍有待提高,近年网络通信技术以超摩尔定律的速度高速增长已经为此提供了可能,达到实用阶段只是时间问题。另一方面是有效的网格体系模型和计算模型还没有建立。网格的资源是分散和动态的,计算也是一种分散的、动态的过程,传统的并行共享内存或消息传递程序模式不能直接有效的利用。如何使科学计算高效使用网格的计算能力是当前一个主要研究方向。


3 HPC 的发展趋势

      2008年应该是HPC发展之路上的一个里程碑,结合我们现有的技术来预测一下HPC的发展趋势,可以包括以下几个方面: 1)从多核到众核的变迁:Intel展示的80核处理器原型的峰值计算能力可达1Teraflop,不仅证明了当前的多核架构不再是短暂的时尚,而且表明业界已为未来的众核发展制定了切实可行的计划。众核处理器正在浮出水面,但处理器技术的发展并不只是单纯增加内核数量,内核功能也将趋于多元化,即异构架构。 2)异构计算:高性能计算系统的异构主要体现在三个层次:芯片级异构(即在单芯片内部集成异构多核)、节点级异构以及系统级异构。 3)虚拟化:近几年虚拟化技术受到了越来越多的重视,通过虚拟化技术能够将基础设施从物理变成虚拟的资源池,能够满足降低成本(包括管理成本、硬件、占地空间和电力消耗)的需求。虚拟化技术包括:面向专用操作系统的虚拟化和集群虚拟化。 4)绿色高性能:近几年高性能计算的性能在飞速上升,但是能耗问题已引起业内人士的意识发生转变。实际上,从今年TOP500的排名中,我们已经看到了这种转变。Tabor Communications 的专家Mike Bernhardt认为高性能计算界对绿色计算的意识在不断增强,主要源于对环境问题和经济成本两方面的考虑,而目前美国已经开始着力建立绿色计算的评判标准。 

你可能感兴趣的:(Architecture)