虚拟化HPC:直面七大技术挑战
尽管虚拟化技术的应用能够提高商用高端服务器|0">服务器的利用率,但与传统高性能计算技术(HPC)的代表超级计算机一样也面临着许多技术困境。目前全球高端服务器市场主要被RISC架构的产品占据,约占服务器市场近40%的份额。但随着开放式系统应用的深入、普通用户对高端服务器的需求增加、集群系统的技术成熟,RISC的地位进一步动摇。主要体现在,新兴行业和竞争激烈的传统行业因成本带来的巨大压力而产生的对8至16路通用服务器(此处"通用服务器"是相对采用RISC架构芯片的服务器而言,即采用x86或安腾架构处理器的服务器。)的需求; 高性能集群系统的成功应用,导致放弃使用大型机而采用基于集群技术的通用多路服务器所形成的市场,尤其对星群的高性能集群的需求的增长。
虚拟化给高端服务器带来机会
尽管需求一再攀升,但商用高端服务器与传统的高性能计算技术的代表超级计算机一样也面临着困境--计算机的实际计算能力大大低于系统理论的峰值。不仅如此,人们在编制供它们使用的并行程序时的付出也与其产出不成比例。因此,满足对高效能的需求已成为人们设计商用高端服务器的重大挑战。目前高性能计算机仍沿用冯·诺依曼模型为基础的以CPU为核心的计算模式。作为这一模式基础的CPU技术目前已经发展到了追求线程级并行(TLP)的多核时代,其代表就是片上服务器(server-on-chip),例如Sun的UltraSPARC T1"Niagara"处理器芯片。但是,问题仍然没有解决--由于应用的复杂、种类的繁多、规模的巨大,单一的编译器或操作系统仍然无法智能地去挖掘蕴藏在其中的全部并行性。
利用虚拟机这一技术可以在单一服务器上支持不同的应用软件和操作系统,而且还能够动态地将资源分配到最需要的地方,可以减少数据处理过程中所需的服务器数量。有了虚拟机,企业在每次部署新的操作系统时,就无需迁移现有的应用软件,从而能延长那些虽然已经过时,但仍非常重要的应用软件的使用周期。这样,那些基于Windows NT的应用程序就可以再次焕发生机。
除此之外,人们发现利用虚拟技术,也能进一步发掘应用间的时间和空间的并行性。当然,虚拟机技术带来的隔离性、安全性、灵活性更增添了这一技术的魅力。中科院计算所目前正在研究的项目的主要内容就是围绕如何利用虚拟机技术构造高端商用服务器,研究新型的高端服务器和相关技术,同时考虑虚拟SMP的入侵防护技术。除了这些方面,基于虚拟化技术的商用高端服务器,在各种环节的研发中还存在诸多技术挑战。
虚拟机及其协同技术
虚拟机是构造虚拟SMP服务器的基础,它是由虚拟机监控(VMM)软件创建和管理。传统的VMM例如Xen和VMware面向单一节点,节点既可以是单一CPU也可以由SMP构成。这时由这些VMM所构造的虚拟机(VM)所能够利用的资源例如CPU、内存、磁盘、通信带宽等就仅限于这个单一的物理节点。从这个意义上说,虚拟机间的协同也就等价于传统服务节点或服务器间的协同,无法充分利用基于虚拟机技术创新所带来的益处。因此,必须突破目前虚拟机构造中资源的局限性,使得一个虚拟机不仅能够从它的宿主物理节点上取得资源,而且能够利用网络从其他非宿主的物理节点上获取资源,从而实现资源在虚拟机间的流动,实现部件级的虚拟化。这里的部件泛指CPU、内存、磁盘、网络等构成传统计算机的部件。
计算所要研究的分布式超级虚拟机监控软件(distributed hyper virtual machine monitor,DHVMM)是实现部件级虚拟化的关键支撑。基于DHVM提供的强大的部件级虚拟化能力,虚拟机间的协同就转变为资源和作业的调度和迁移。该项目将强调部件在虚拟机间的流动,当一个虚拟机有大量作业到达或有繁重作业而出现负载尖锋时,不采用传统的方法如作业/进程的迁移,而是通过DHVMM将网络环境中可利用的其他虚拟机上的空闲部件"流动"到资源紧张的虚拟机上,通过动态地增强重载虚拟机的计算能力、存储能力、通信能力来处理其上的作业。同时,当作业的负载高峰过去后,被动态增强的虚拟机可以自由、实时地释放"富余"的部件,供系统中其他虚拟机在需要的时候动态地获取,计算所将这种技术称为能力服务计算。
共享内存技术
SMP服务器的核心是内存共享技术,例如著名的Snoopy或者directory 协议等。这些技术通常需要一定程度硬件的支持才能获得期望的高性能,例如SGI Altix的cc-NUMA内存共享技术,因此成本高昂、扩展性差。随着网络技术特别是Myrinent和Infiniband网络技术的发展,基于软件实现的内存共享技术,例如分布式共享内存DSM技术由于成本低廉和可扩展性好而开始发展起来。
计算所研究的这个项目要求实现多个物理服务器的整合(8个以上),因此更适合于使用不依赖硬件支持的基于软件的内存共享技术,以获得更好的通用性和平台独立性。传统的DSM技术不得不使用复杂的以lock和barrier为基础实现的融贯性和一致性协议,导致延迟开销很大。随着UPC为代表的分割的全局地址空间模型编程技术的发展,为发展新型的内存共享技术提供了客观的需求。
另一方面,高效能服务器设计中的一个重要问题是提高编程的效率,而阻碍并行编程效率的首要问题就是进程或线程间的通信和同步问题,所以事务块寄存器技术得以发展,因为它取消了过去在并行程序中必须使用的lock和barrier等同步操作。同时,由于显式同步的减少或取消使得线程因数据依赖或同步依赖导致的进程等待时间大大减少,使系统吞吐率提高,从而使得内核负载的饱满程度得以大幅提升,进一步提高了系统的生产率。该项目计划将以DHVMM为基础,发展全新的以软件实现的内存共享技术。
- 惠普微软高性能计算系统难以在中小企业推广(06-04)
- PGI编译器瞄准AMD的四核Opteron皓龙处理器 (07-13)
- 个人计算革命 曙光首台个人HPC将问世(04-04)
- 曙光PHPC入市 期待破冰HPC普及时代(07-19)
- 曙光:HPC亲民运动能否成功?(08-27)
- 中国高效能计算机标准正式确立(09-09)