8828彩票

热门标签:8828彩票 写作发表 工程师论文 8828彩票注册网址
当前位置: 8828彩票注册网址 > 计算机论文 > 浅析高性能计算云解决方案

浅析高性能计算云解决方案

时间:2018-06-11 10:58作者:南山
本文导读:这是一篇关于浅析高性能计算云解决方案的文章,随着系统虚拟化和云计算技术的发展, 高性能计算云 (HPC Cloud) 已逐渐成为一种新兴的高性能计算服务模式。高性能计算云是一种基于云计算的高性能计算资源管理和服务提供模式。
  摘 要:文章针对传统高性能计算模式面临的服务不灵活、HPC环境不能按需定制、计算资源可扩展性差等问题, 有机结合轻量级虚拟化技术、虚拟机管理技术、单一映像技术以及并行程序开发等技术, 提出了一种以云计算模式提供高性能计算服务的解决方案, 该方案首先采用虚拟化技术对各计算节点上的计算资源进行分区, 然后再把多个分区映射成一台高性能的SMP计算机, 同时提供改进的MPI应用程序开发和执行环境。经分析, 该方案能够按照用户的需求动态地分配计算资源、提高了系统的可靠性、降低了HPC应用开发和部署难度, 能够满足类型多样、需求各异的中小规模HPC应用需求。
  
  关键词:高性能计算; 云计算; 单一系统映像; 并行程序开发;
  


 
  1、 引言
  
  随着信息化社会的飞速发展, 人们对信息处理能力的要求越来越高, HPC市场也在不断扩大和细分。HPC应用的数量和类型在不断增加, 除了传统HPC应用 (如科学研究、航天、国防、石油勘探、气象预报等) , 边缘HPC应用 (如金融、政府信息化、企业、网络游戏等) 对高性能计算的需求也在迅猛增长, 并且逐渐影响着人们的日常生活。
  
  传统高性能计算模式面临诸多问题:如何向用户提供更为灵活的服务模式、更高级别的自主管理计算资源的能力?如何向用户提供按需定制HPC环境, 同时保持对遗留程序的支持?如何向用户提供按需的动态伸缩的计算资源?
  
  随着系统虚拟化和云计算技术的发展, 高性能计算云 (HPC Cloud) 已逐渐成为一种新兴的高性能计算服务模式。高性能计算云是一种基于云计算的高性能计算资源管理和服务提供模式。它的主要特征包括: (1) 使用虚拟化技术管理和组织计算资源, 将虚拟机作为资源供应的基本单位; (2) 通过Iaa S或者Paa S方式对用户提供HPC服务。
  
  因此以云计算的理念和技术构建高性能计算云, 为解决传统高性能计算面临的挑战提供了一个很好的选择, 尤其是面对类型多样、需求各异的中小规模HPC应用时。
  
  2、 高性能计算云解决方案
  
  以刀片服务器为硬件平台, 通过对轻量级虚拟化技术、单一系统映像技术、主动容错技术等内容的研究, 能够有效地的管理和利用集群系统中分布的软硬件资源, 为应用程序尤其是HPC应用程序提供一个高效、可靠和安全的软硬件环境。
  


  

图1 高性能计算云平台拓扑结构
  
  如图1所示, 高性能计算云平台的节点分为控制节点、计算节点、存储节点和I/O节点等4不同功能类节点, 每类节点分别在硬件平台、操作系统、支撑软件等层次提供不同功能。控制节点主要完成整个系统的管理功能包括虚拟机的创建、用户的管理等;计算节点主要完成计算功能, 是整个系统的核心;I/O节点主要完成系统的输入输出、人机交互等功能;存储节点用于存储共享数据, 包括Lxc使用的跟文件系统。另外, 各类节点只是逻辑功能上的划分, 并不对应一个硬件平台, 例如I/O节点除了输入/输出、人机交互等功能以外, 它还可以参与计算, 与计算节点一起映射成一台高性能计算机。
  
  面对类型多样、需求各异的中小规模HPC应用, 在逻辑上将整个集群的硬件资源可分成大小不等的多个组, 每组资源映射成一台高性能的SMP计算机供一个个HPC应用。
  
  

图2 高性能计算云总体技术方案
  
  如图2所示, 整体方案大体上分为硬件平台层、操作系统层、中间件层和应用层等。
  
  在主操作系统层, 各类节点运行不同的操作系统。管理节点上运行的是标准Linux操作系统, 方便各种管理软件的安装、运行;在计算节点运行的是为提高计算效率而定制优化的Linux内核和轻量级的网络通信协议;为提高I/O性能, 在I/O节点上的驱动程序需经过优化, 同时操作系统内核也是加强安全Linux内核。另外, 在主操作系统的内核实现单一系统映像。单一系统映像包括单一进程空间、单一内存空间、单一文件系统以及单一I/O系统, 使得整个系统在操作系统层表现为多核单机系统。
  
  中间件层包括MPI通信库和MPI算法库。MPI通信库就是本文提出的并行编程模型的实现, 应用程序编程接口遵循MPI规范, 可像普通的静态库函数被应用程序调用;MPI算法库是一些通用的并行算法的MPI实现, 并行算法完全封装在静态库函数中, 可像其他库函数一样被应用程序透明地调用。
  
  应用层包括MPI应用程序和其他应用程序, MPI应用程序只能调用MPI算法库或MPI通信库中库函数, 不能直接运行在操作系统上。
  
  2.3 单一系统映像操作系统
  
  单一系统映像是指把集群中所有分散的资源映射成一个单机系统交由用户管理和使用, 用户感觉不到组成系统的单个结点的存在。通过对单一系统映像的研究, 方便用户管理、使用系统资源、部署HPC应用程序。
  

 
  图3单一系统映像系统内部结构 (参见右栏)
  
    
  如图3所示, 单一系统映像系统在最底层实现通信子系统;中间层实现了一个通用的分布式服务机制;上层模块实现了各种分布式服务功能。
  
  TIPC设计的一个主要目的就是从通信的角度使集群系统表现为一个单机系统, 并能够感知并自动适应网络拓扑结构的变化;
  
  远程过程调用系统利用TIPC协议实现了一个分布式服务管理器, 为上层的通信提供调用接口。同样, 热插拔模块也是利用TIPC协议能够感知网络拓扑结构变化的特性实现节点的动态地增加、移除等工作, 能够根据节点的状态重构系统。
  
  分布式数据存取模块实现一种分布式数据管理机制, 为上层模块提供存取远程节点上数据的机制。
  
  I/O管理模块和内存管理模块实现整个机箱范围内的I/O和内存共享, 当一个进程从一个节点迁移到另一个节点上时, 它的内存空间可以映射到原来节点的内存上并可透明地访问I/O节点上的设备。进程间通信模块基于内存共享机制实现分布式进程间通信如共享内存、消息队列和信号量等。进程管理模块负责进程迁移、进程检查点设置、远程fork等高层次的进程管理工作。
  
  全局调度器模块实现不同的全局进程调度策略, 并利用进程管理模块提供的进程迁移服务实现各个计算节点的负载均衡。
  
  2.4 并行程序开发和运行环境
  
  HPC应用程序中只有一部分计算适合使用并行处理, 根据这一假设提出一种比现有MPI实现方式更加灵活的并行程序编程模型。在单一系统映像的基础上, 该编程模型摒弃了MPI的命令和并行环境, 允许程序员按照单机多进程的方式进行编写和执行并行程序。在遵循MPI规范的前提下, 通过改进MPICH (一种流行的MPI实现方式) 实现了该编程模型。
  
  该实现方案取消了MPI的运行工具如mpirun等和并行环境即各节点上的代理进程, 因此基于这种编程模型, 并行算法可以以静态链接库的形式存在, 对用户是透明, 实现灵活, 代码复用率高。应用程序在启动时只有一个主进程, 当需有并行执行时创建多个从进程, 进程间通过MPI接口进行通信。
  
  
图4 MPI应用程序执行流程
  
  图4是基于该MPI库的应用程序执行流程, MP应用程序在调用MPI_Init函数时初始化并行应用环境, 并通过高端进程管理的远程Fork功能创建多个进程即MPI进程, MPI进程调用MPI接口函数进行数据交互、同步, 最后调用MPI_Finilize函数杀死各个MPI进程, 并行计算结束。这一并行计算过程可重复执行。
  
  3、 总结
  
  针对类型多样、需求各异的中小规模HPC应用需求, 传统的高性能计算模式存在服务不灵活、HPC环境不能按需定制、计算资源可扩展性差等问题。本文提出的方案通过云计算的方式来提高高性能服务, 该方案有机结合轻量级虚拟化技术、单一系统映像技术以及改进的并行程序编程模型, 在保证系统高效运行的同时, 提高了系统的可靠性, 降低了HPC应用的开发和部署难度, 是类型多样、需求各异的中小规模HPC应用的有效解决方案。
  
  参考文献
  
  [1]T.Sterling and D.Stark.A high-performance computing forecast:Partly cloudy.Computing in Science and Engineering, 2009, 11 (4) :42-49
  [2]Keith R.Jackson, Krishna Muriki et.al.“Performance Analysis of High Performance Computing Applications on the Amazon Web Services Cloud”in Proceedings of Cloud Com, 2010
  [3]K.Keahey, “Cloud Computing for Science, ”in Proceedings of the 21st International Conference on Scientific and Statistical Database Management.Springer-Verlag, 2009
  [4]J.Rehr, F.Vila, J.Gardner, L.Svec, and M.Prange, “Scientific computing in the cloud, ”Computing in Science and Engineering, vol.99, no.Pre Prints, 2010
  [5]Samuel Thibault and Tim Deegan.Improving performance by embedding HPC applications in lightweight Xen domains.In 2nd Workshop on System-level Virtualization for High Performance Computing (HPCVirt) , 2008, 9-15
  [6]Gavrilovska, A., Kumar, S., Raj, H., Schwan, K., et al.Highperformance hypervisor architectures:Virtualization in hpc systems.In HPCVirt (2007) , 1-8
  [7]F.Cappello.Fault tolerance in petascale/exascale systems:Current knowledge, challenges and research opportunities.Int.J.High Perform.Comput.2009, Appl., 23 (3) :212-226
  [8]A.Verma, P.Ahuja, and A.Neogi.Power-aware dynamic placement of hpc pplications.In ICS'08:Proceedings of the 22nd annual international conference on Supercomputing, 175~184, New York, NY, USA, 2008.ACM
  [9]John R.Lange, Peter A.Dinda.Sym Call:Symbiotic Virtualization Through VMM-to-Guest Upcalls.In Proceedings of the 2011 ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments (VEE 2011)
  [10]F.Cappello.Fault tolerance in petascale/exascale systems:Current knowledge, challenges and research opportunities.Int.J.High Perform.Comput.2009, Appl., 23 (3) :212~226
联系我们
  • 写作QQ:
  • 发表QQ:
  • 服务电话:18930620780
  • 售后电话:18930493766
  • 邮箱:lunwen021@163.com
  • 微信号:18930620780
    微信二维码
范文范例
网站地图 | 网站介绍 | 联系我们 | 服务承诺| 服务报价| 论文要求 | 期刊发表 | 服务流程