高性能计算平台(精选8篇)
高性能计算平台 篇1
随着信息技术的高速发展,高性能计算(High Performance Computing,)作为计算技术的一个分支得到了广泛的关注和快速发展。高性能计算系统的主流体系结构分三种:共享内存(SM,Shared Memory)、连贯缓冲非统一内存寻址(CC-NUMA,Cache-Coherent Non Uniform Memory Access)和集群(Cluster)。目前对HPC影响最大的是集群,集群是高性能计算平台使用最广泛的一种体系结构构。集群是这样一种技术,它由多台计算机通过集群管理软件联系起来,使多台计算机能像一台计算机那样工作或看起来想一台计算机。本文提出高性能计算平台的解决方案,利用Amazon弹性计算云(Elastic Compute Cloud,EC2)平台,结合Platform Computing公司的核心集群调度管理中间件LSF(Load Sharing Facility)与PAC(Platform Application Center),使得高性能计算在云上得以实现。
1 LSF集群管理调度中间件与PAC
Platform LSF是一个企业级的跨平台的集群管理中间件,LSF使负载平衡,分配资源,同时提供对资源的访问。LSF提供了一个资源管理框架,接受作业请求,将作业分发到最合适的资源上运行,监视作业的运行情况[1]。LSF集群一般由一个LSF主机(Master host)、若干LSF备用主机(Candidates)和许多LSF从机(Slave host)组成,从机的集合也称为资源(Resource)。LSF主机维持着若干个作业队列,并与LSF的从机间歇性的通信,以得到从机的信息。LSF的备用主机是在主机出现故障以后替代主机的。当向集群提交一个作业时,LSF主机先把作业放到对应的队列中,然后按照一定的均衡调度策略,将作业分发到理想的从机上去执行,并跟踪作业的运行。从机会把作业的运行信息和结果传回给主机。
PAC(Platform Application Center)是运行在LSF基础之上的Web图形化用户接口,它可以对集群进行简单的配置、监控和管理,最大的特点是,它对一些常用的应用程序进行了封装,形成了应用程序模板,用户可以在图形化的界面提交应用程序作业,如果模板不能满足用户需求,用户只要熟悉html就可以修改或自定义模板。PAC友好的图形化用户界面让用户可以不必关注底层LSF,可以透明地使用集群。
2 Amazon弹性计算云EC2
亚马逊弹性计算云服务(Elastic Compute Cloud,EC2)是亚马逊提供的云计算环境的基本平台。网络数据流的流向非常复杂,企业和个人的网络平台所需的计算能力也随着这些流量增加在不断的变化着。利用亚马逊提供的各种应用接口,用户可以按照自己的需求随时创建、增加或实例[3]。这样用户就可以按照自己的需要的计算能力来付费,消除了购买大量昂贵硬件设施的花费。EC2的基本架构如图1。
图中AMI(Amazon Machine Image,亚马逊机器映像)是一个将操作系统、应用服务和应用程序打包的模板。Instance是由AMI创建的,它运行的是AMI的一个副本,可以使用一个AMI创建多个具有相同属性的Instance。亚马逊免费提供的丰富的AMI,可以在这些AMI的基础上构建我们的AMI,然后用它创建我们需要Instance。Instance有多个类型,它们因处理能力,内存,存储和IO性能等不同而有不同的资费。而每个Instance有两个IP地址:共有IP与私有IP,Instance通过私有IP互相通信,用户通过共有IP远程登录到Instance。EC2采用密钥对(Key Pair)和安全组(Security Group)作为安全容错机制。此外,EC2还提供了丰富的API,利用这些API函数,可以基于EC2开发应用程序[2]。
3 方案详细设计
方案的设计包括两个部分,第一部分是创建AMI,第二部分是搭建高性能计算平台。
3.1 创建AMI
1)生成并访问Instance
选择亚马逊提供的AMI,这里使用搭载Cen OS5.5操作系统的AMI来创建Instance。这个过程非常的简单,只要是按照亚马逊的Web Service页面上的提示一步一步进行操作,需要注意的是密钥对(Key Pair)和安全组(Security Group),需要创建并下载这个密钥对和使用缺省的安全组。这样就可以通过SSH(Secure Shell)和密钥对远程访问Instance。
2)创建文件与上传LSF和PAC安装包
登录成功后,首先在/root目录下创建userdata文件,这个文件用来保存搭建平台时用户输入的一些参数,接下来就上传LSF和PAC的安装包。
3)自动化脚本amisetup.sh设计与编写
自动化脚本是在生成Instance后自动运行的脚本,它读取用户在搭建平台时输入的一些参数(数据和参数将在下一节用户接口做详细的介绍),按照用户的参数的不同进行不同的处理。图2是amisetup.sh脚本运行的流程图:
4)生成新的AMI
上面的三步做好以后,就可以应用EC2的命令ec2-bundle-vol、ec2-upload-bundle和ec2-register分别进行打包、上传和注册新的AMI,亚马逊会产生一个AMI的ID,如amixxxxxxxx,以后就可以使用这个AMI来创建Instance。
3.2 搭建高性能计算平台
此方案提供了两种搭建高性能计算平台的接口:通过亚马逊web service界面搭建高性能计算平台与通过我们设计的auto-launch脚本创建HPC平台,下面详细介绍这两种接口。
1)通过web service界面搭建高性能计算平台
由于在从机上安装LSF时需要指定主机的主机名,所以通过web service界面搭建高性能计算平台时需要二次创建过程,第一次即使创建LSF主机,第二次创建LSF备用主机和从机。过程如下:
A.登录Amazon web service界面http://aws.amazon.com/console/
B.点击launch instance,选择要使用的AMI,设置Number of Instances(虚拟机实例的数量)与Availability Zone(区域),在User Data中指明Existing Master Internal IP、root Initial Passwd、lsfadmin Initial Passwd和Num Of Master Candidates,其中Existing Master Internal IP是主机的主机名,在第二次的创建中,通过指定这个参数,备用主机和从机可以加入到主机管理的集群中;root Initial Passwd与lsfadmin Initial Passwd是root用户和LSF管理员的初始密码设置;Num Of Master Candidates是在第二次创建中备用主机的数量。
C.创建ssh的Key Pair并下载到本地,选择Security Group,最后选择创建实例。
D.当这个Instance在页面上显示为running时,就可以通过http://主机公有IP:8080登录到PAC图形化用户界面,使用PAC提供的应用程序模板提交和运行作业。
2)通过auto-launch脚本创建HPC平台
通过web service界面搭建平台,图形化的用户接口方便了用户的操作,但是每次都要两次创建过程,显得有一点复杂。为此设计了一个auto-launch命令行脚本,该脚本使用Python语言编写并调用了亚马逊EC2的API,在脚本运行时加进所需要的参数,就可以一次性的创建我们需要的高性能计算平台。脚本的执行流程如图3。
脚本的使用方法如下:
主机的数目,缺省为1,表示只有一个主机,没有备用主机。
-k,--keypair
-g,--group
-a,--accesskey
-s,--secrte-accesskey
-z,--zone
-p,--keypair-path
--root-passwd
--lsfadmin-passwd
登录日志的级别,包括DEBUG,ERROR,FATAL,INFO,NOTSET,WARN,WARNING,缺省条件下是INFO。
例如:我们在命令行键入:
将会在EC2上创建10个m1.large型的机器,一个为LSF主机,一个为LSF备用主机,其余8个为LSF从机。搭建成功后会显示如下信息:
使用浏览器打开最后一行的URL进入PAC的登录界面,登录成功后,就可以运行应用程序任务。
4 结束语
在共有云上搭建高性能计算平台,与传统的搭建在服务器机房上的高性能平台相比,最大的优点可以根据需要动态扩展,缩小集群,在不使用的时候,可以删除集群,这大大降低了成本,提高了资源的利用率。对于有短时间有较大计算量需求的个人、学校、小型实验室和中小企业具有很高的参考价值。
摘要:该文基于Amazon弹性计算云(Amazon EC2),结合Platform LSF(Load Sharing Facility)集群调度中间件和Platform ApplicationCenter(PAC)软件,提出了一个在Amazon弹性计算云上搭建高性能计算平台的解决方案,并为此平台的搭建设计和实现了自动化脚本。与传统的高性能计算平台相比,它实现了计算资源的弹性定制,降低了成本,提高了资源利用率,具有极大的灵活性。
关键词:高性能计算,Amazon弹性计算云,LSF,PAC
参考文献
[1]Platform Computing.Platform LSF Foundations[Z].2011.
[2]Amazon.Amazon Elastic Compute Cloud User Guide API Version[EB/OL].Http://aws.amazon.com/documentation/ec2/.
[3]刘鹏.云计算[M].北京:电子工业出版社,2010.
高性能计算平台 篇2
“高性能计算”重点专项2016
项目申报指南
依据《国家中长期科学和技术发展规划纲要(2006—2020年)》,科技部会同有关部门组织开展了《高性能计算重点专项实施方案》编制工作,在此基础上启动“高性能计算”重点专项2016项目,并发布本指南。
本专项总体目标是:在E级计算机的体系结构,新型处理器结构、高速互连网络、整机基础架构、软件环境、面向应用的协同设计、大规模系统管控与容错等核心技术方面取得突破,依托自主可控技术,研制适应应用需求的E级(百亿亿次左右)高性能计算机系统,使我国高性能计算机的性能在“十三五”末期保持世界领先水平。研发一批重大关键领域/行业的高性能计算应用软件,建立适应不同行业的2—3个高性能计算应用软件中心,构建可持续发展的高性能计算应用生态环境。配合E级计算机和应
用软件研发,探索新型高性能计算服务的可持续发展机制,创新组织管理与运营模式,建立具有世界一流资源能力和服务水平的国家高性能计算环境,在我国科学研究和经济与社会发展中发挥重要作用,并通过国家高性能计算环境所取得的经验,促进我国计算服务业的产生和成长。
本专项围绕E级高性能计算机系统研制、高性能计算应用软件研发、高性能计算环境研发等三个创新链(技术方向)部署20个重点研究任务,专项实施周期为5年,即2016年—2020年。
按照分步实施、重点突出原则,2016年启动项目的主要研究内容包括:E级计算机总体技术及评测技术与系统,高性能应用软件研发与推广应用机制,重大行业高性能数值装置和应用软件,E级高性能应用软件编程框架及应用示范,国家高性能计算环境服务化机制与支撑体系,基于国家高性能计算环境的服务系统等重大共性关键技术与应用示范研究,以及新型高性能互连网络、适应于百亿亿次级计算的可计算物理建模与新型计算方法等基础 — 2 —
前沿研究。2016年在三个技术方向启动10个任务。
针对任务中的研究内容,以项目为单位进行申报。项目设1名项目负责人,项目下设课题数原则上不超过5个,每个课题设1名课题负责人,每个课题承担单位原则上不超过5个。
1.E级高性能计算机系统研制
1.1 总体技术及评测技术与系统研究(重大共性关键技术类)研究内容:研究提出我国高性能计算机系统发展技术路线图和总体技术方案。研究我国高性能计算技术标准体系和核心标准,推动高性能计算机、高性能计算应用和高性能计算环境的协调均衡发展。研究E级高性能计算机评测方法与技术,发展体现应用特点的基准测试程序集,对E级高性能计算机系统进行全面评测,以评测促进研究工作。
考核指标:完成高性能计算机系统技术路线图和总体技术方案;完成我国高性能计算技术标准体系,制定3个核心标准;提出适应E级高性能计算机评测需求的评测方法,研制基准测试程
序集和评测系统,建立可持续发展的评测环境,完成对E级高性能计算机系统的评测。
支持年限:不超过5年 拟支持项目数:1项
1.2 新型高性能互连网络(基础前沿类)
研究内容:面向百万节点、数千万处理器核规模,开展按需弹性网络设计方法和光互连网络的研究,实现互连网络结构(拓扑和路由)与应用通信特征的最优匹配。主要研究内容包括:
与计算和存储协同的融合网络理论、架构与协议、相应的编程模型和通信模型,网络与国产处理器的融合架构与设计,融合多协议的新型网络设备体系结构。
高性能高密度的光互连网络架构、基于光交换的动态光路可重构网络和路由算法、低功耗设计及光电高密度集成。
应用通信行为分析和建模、面向应用通信特征的高性能互连网络结构设计方法、高阶路由器设计方法、无死锁和可容错路由 — 4 —
算法等。
考核指标:提供原型芯片及原型系统,证明技术有效性。形成网络与应用、计算和存储相互协同的设计新方法,建立和发展新型大规模计算机互连网络理论,为我国在高性能计算领域保持领先优势提供关键保障。
实施年限:不超过3年 拟支持项目数:1—2项
1.3E级计算机关键技术验证系统(重大共性关键技术)研究内容:提出突破制约E级计算系统功耗、性能、可扩展性等技术瓶颈的新思路,基于自主可控核心器件,探索先进的体系结构及关键技术,构建规模性验证系统,验证E级计算机系统的可实现性,为国产E级计算机的研制奠定坚实的技术基础。
研究可实现E级计算机的体系结构、高性能高可扩展的互连通信、能耗管控和高效冷却、高效计算节点、自感知操作系统、编程模型和编译系统、多层次存储、综合容错技术等E级系统关
键技术,采用国产超高性能处理器以及相关系统技术,实现规模性验证系统,并运行基础软件和典型应用,验证E级计算机的可实现性。
考核指标:完成E级系统关键技术验证系统,系统的规模为512个节点,单节点每秒5T—10TFlops双精度浮点计算性能,节点能效每瓦10—20Gflops,互连网络的点对点单向带宽大于200Gbps,MPI延迟小于1.5us,并证明其可实现10万节点以上规模。验证系统配备包括节点操作系统、系统并行操作系统、运行时系统、并行编译系统等在内的系统软件。在系统上部署3个以上能验证系统效能的大规模典型应用。
验证系统的Linpack效率大于60%,HPCG测试、Graph500测试、深度学习类测试的性能达到世界先进水平。基于对所研制的验证系统的测试与模拟,提出E级系统的方案,证明其能效比可以达到30GFlops/W以上,互连、存储系统的性能可以与计算系统匹配。验证系统与E级系统方案将为最终E级机研制团队的 — 6 —
遴选提供依据。鼓励优势单位强强合作,提升核心技术原创水平。所研制的验证系统要落实用户或在国家高性能计算环境安装部署,得到实际使用并得到用户配套资金。
实施年限:不超过2年
支持项目数:拟支持不同技术路线和架构的1~3台系统 2.高性能计算应用软件研发
2.1 适应于百亿亿次级计算的可计算物理建模与新型计算方法(基础前沿类)
研究内容:针对典型应用领域中不适应于E级计算的、我国重大行业应用普遍采用的四类左右的物理模型和计算方法,开展创新的可计算物理建模与计算方法研究,提出适应于E级计算的可计算物理建模和新型计算方法理论,并进行数值模拟典型验证。
考核指标:梳理并凝练形成依赖于E级计算的若干共性基础研究问题,发现制约E级计算的四类左右的物理建模和计算方法瓶颈并提出相应的解决方案,探索建立适应于E级计算的可计算
物理建模和新型计算方法理论。利用所提出的可计算物理建模和新型计算方法,借助于E级计算开展数值模拟研究,获得国际领先的基础研究成果,培养高水平基础研究人才。
实施年限:不超过5年 拟支持项目数:1—2项
2.2 重大行业应用高性能数值装置原型系统研制及应用示范(重大共性关键技术与应用示范类)
研究内容:围绕飞行器设计与优化、全球气候变化等应用领域,基于现有研究基础和自主研发的高性能应用软件,突破其中的多物理、多尺度耦合技术瓶颈,构建高性能数值装置原型系统并进行典型验证,通过十亿亿次量级的高性能数值模拟,获得一批匹配于物理装置的重要的虚拟装置数值模拟成果。
(1)飞行器数值装置原型系统—数值飞行器。研制自主知识产权的空气动力学、结构强度力学分析两套应用软件,研制考虑结构弹性的气动力载荷分析、气动弹性分析以及它们之间的多 — 8 —
物理、多尺度的流—固耦合和多学科精细化综合优化软件系统。研究飞行器气动力学以及飞行器空气动力、飞行力学与结构动力学之间包括载荷传递的流固耦合计算、工程实用多体分离特种计算、飞机升阻力精确计算等高精度高效率计算方法,研究精确的跨音速气动弹性计算方法和十万量级设计变量的流固耦合综合优化算法,研究百万处理器核量级的并行计算技术。通过十亿亿次量级的高性能数值模拟,原型系统可以相对准确地开展大型飞行器总体结构强度分析,模拟气动力学以及气体与飞行器结构固体之间的流固耦合现象,获得一批匹配于飞行器物理装置的重要的虚拟装置数值模拟成果。
(2)全球气候预测与地球环境数值装置原型系统—数值地球系统。研制自主知识产权的大气模式应用软件、海洋模式应用软件、陆面模式应用软件、海冰模式应用软件和多类不同物理化学过程及其相互非线性耦合的大型应用软件系统;研究多个模式的高分辨率数值计算方法、多个模式之间的高精度多物理耦合算
法和百万CPU核量级的并行计算技术。通过十亿亿次量级的高性能数值模拟,原型系统可以相对准确地模拟全球气候变化中典型气候现象和地球环境中典型气候事件的发生,获得一批匹配于地球气候环境变化的重要的虚拟装置数值模拟成果。
考核指标:
(1)数值飞行器原型系统的全机流场数值模拟可实现60万核规模以上并行计算,复杂部件局部流场的高精度高分辨率数值模拟可实现百万核规模以上并行计算,以万核级为基准的并行效率达到30%以上,升力预测精度3%、阻力预测精度5%以内。可进行非线性结构振动与非线性流动耦合模拟,网格规模达到百亿量级,并行规模达到60万核以上,以万核级为基准的并行效率不低于30%,形成非线性气动弹性研究的完整体系,大展弦比飞机变形后升力特性预测精度5%以内,颤振速度预测精度10%以内,达到国际先进水平。多体分离系统模拟网格规模达到数十亿量级,可实现百万规模处理器核并行,以万核级为基准的并行效率不低 — 10 —
于30%,模拟结果与试验趋势一致。气动力和结构载荷分析考虑结构变形影响,实现反向耦合,载荷计算精度在5%。可进行十万设计变量的气动力、气动弹性、载荷和结构等多学科精细模拟优化,以万核级为基准的60万核效率达到30%以上。
(2)数值地球原型系统实现对热带气候系统(包括对赤道辐合带、厄尔尼诺等)较准确的模拟,以解决目前国内外耦合模式中普遍存在的虚假赤道双辐合带以及厄尔尼诺强度及周期失准的问题,提供更为准确的台风数目年际变化预估。实现在统一热力学和动力学理论框架下,以碳、氮、磷循环为重点的生物地球化学过程模型,为陆地生态系统温室气体排放、水体富营养化、气候变化对陆地生态系统的反馈机制等提供量化模拟结果。全球大气模式的网格分辨率小于1/4°,全球海洋模式的水平网格分辨率小于1/12°。性能可扩展至100万核以上,并行效率达到30%,整体模拟速度达到5模拟年/天。有效完成全球超高分辨率100年以上的数值模拟,提供更加合理的东亚地区气候模拟结果并发布。
实施年限:不超过5年
拟支持项目数:1—2项,数值飞行器项目要求产学研结合申报 有关说明:其他经费(包括地方财政经费、单位出资及社会渠道资金等)与中央财政经费比例不低于1:1。
2.3 重大行业高性能应用软件系统研制及应用示范(共性关键技术与应用示范类)
研究内容:围绕复杂电磁环境、大型流体机械节能优化设计、复杂工程与重大装备设计、海洋环境数值模拟、能源勘探等重大行业应用,研制适应于E级计算的行业共享的应用软件系统并通过典型应用进行示范验证,获得一批具有重要显示度的数值模拟成果。选择以下一种重大行业应用软件系统进行研发。
(1)复杂电磁环境高性能应用软件系统。围绕复杂电磁环境领域重大行业应用在高性能计算电磁学及多物理等方面对E级计算的迫切需求,建立涵盖器件(至纳米尺度)、平台(至数万波长)和区域(至数千平方公里)三个层次的高性能电磁数值模拟 — 12 —
应用软件系统,实现对工程应用中复杂电磁多物理现象的E级数值模拟,相对准确地预测大型舰船及编队、飞行器编队以及新一代无线通信系统中的复杂电磁环境效应,支撑信息化平台及综合电子信息系统的电磁及多物理设计、预测与评估,显著提升它们在复杂电磁环境中的适应能力。
(2)大型流体机械节能优化设计能力型高性能计算应用软件系统。针对压缩机、鼓风机、泵及水轮机、风力机等大型流体机械的设计优化问题,研究多重旋转坐标系下流体机械非定常流动的高效高精度基础并行算法、新型十亿亿次及百亿亿次计算系统上流体并行软件的可扩展性方法、大型流体机械多参数并行优化设计技术等;研制适合于轴流、离心及混流式多级流体机械非定常流动的能力型高性能并行应用软件;通过十亿亿次量级的高性能数值模拟,完成10级以上大型流体机械非定常流动并行计算,设计工况下的流量、压比、效率预测精度在1%以内,调节工况下的预测精度在2%以内,为大型流体机械优化设计与安全
可靠控制提供可靠的计算数据,为开发流体机械大规模、高精度、大规模工程仿真提供有效计算工具。
(3)复杂工程与装备设计工程力学高性能应用软件系统。围绕大型装备制造、大型土木工程、大型水利工程等复杂工程系统的高分辨率数值模拟对E级工程力学计算的迫切需求,研制涵盖静力学分析、模态分析、冲击分析、材料损伤与破坏分析、非连续性分析等的高性能工程力学数值模拟应用软件系统,通过十亿亿次量级的高性能数值模拟,实现国家重大科技专项中复杂工程装备系统的典型力学响应行为分析,实现我国典型大型土木工程和大型水利工程抗重大自然灾害和全生命周期中抗疲劳损伤的力学综合性能评估,获得与实验一致的模拟结果。数值模拟的分辨率和计算规模与国际同类系统相当。
(4)海洋环境高性能数值模拟应用软件。发展我国的浪流耦合理论、区域及近海海洋模式和预报保障服务,研制西太平洋、北印度洋和南海高分辨率、多运动形态耦合的数值预报模式应用 — 14 —
软件,具备日变化和海洋内波分辨能力,远海达到5公里分辨率,近海海域达到1公里分辨能力。研制近海海陆一体(干湿网格)的浪—潮—流—内波—风暴潮耦合的高分辨率数值模式和应用软件,近海达到公里分辨率,近岸达到百米分辨率。
考核指标:选择上述某个重大行业应用,研制成功高性能应用软件系统并进行典型应用示范验证。软件系统部署于国家高性能计算环境的超级计算机,通过高效率的十亿亿次量级及以上规模的数值模拟,获得一批重要的有显示度的数值模拟成果,充分展示高性能计算对国家重要行业自主创新的支撑能力。以万核为基准的并行效率在60万处理器核规模达到30%,数值模拟的分标率和精度达到国际同类软件水平。
实施年限:不超过5年
拟支持项目数:1—3项,要求产学研结合申报
有关说明:其他经费(包括地方财政经费、单位出资及社会渠道资金等)与中央财政经费比例不低于1:1。
2.4 科学研究高性能应用软件系统研制及应用示范(重大共性关键技术与应用示范类)
研究内容:围绕材料科学、生物医药、科学发现等重大科学研究领域,梳理科学研究对E级高性能计算的典型需求,研制适应于E级计算的科学研究典型应用软件系统并进行应用示范验证,获得一批重要的数值模拟和科学发现成果。选择以下一种应用软件系统进行研发。
(1)材料科学应用软件系统:围绕我国材料科学领域对高通量E级计算的需求,研发自主知识产权的涵盖第一性原理、微观分子动力学和宏观动力学演化的应用软件系统,实现对能源、信息、制造等领域新型材料的创新设计和物性研究的E级数值模拟,获得具有显示度的数值模拟成果。
(2)生物医药应用软件系统:围绕我国个性化医疗发展所需的医药设计和药物筛选等对E级计算的迫切需求,研发涵盖分子动力学和药物筛选数据处理的应用软件系统,实现对个性化药 — 16 —
物设计与筛选全过程的典型E级数值模拟,获得具有显示度的数值模拟成果。
(3)科学发现高性能应用软件系统:围绕我国科学家开展的重大前沿基础研究对E级计算的迫切需求,研发高性能数值模拟应用软件系统,涵盖约4个左右学科方向的基础科学问题,实现对相应典型复杂物理现象的E级数值模拟,获得具有显示度的数值模拟成果。
考核指标:从上述材料科学、生物医药、科学发现等重大基础研究领域中,选择并研制成功1个高性能应用软件系统并进行典型应用示范验证,部署于国家高性能计算环境的超级计算机,通过高效率的十亿亿次量级及以上规模的典型示范数值模拟,获得一批重要的具有显示度的E级数值模拟和科学发现成果,充分展示E级计算对基础研究的支撑能力。以万核为基准的并行效率在60万处理器核规模达到30%,数值模拟的分标率和精度达到国际同类软件水平。通过数值模拟获得的基础研究成果在国际上
形成影响力,达到国际先进水平。
实施年限:不超过5年 拟支持项目数:1—2项
有关说明:其他经费(包括地方财政经费、单位出资及社会渠道资金等)与中央财政经费比例不低于1:1。
2.5 E级高性能应用软件编程框架研制及应用示范(重大共性关键技术类)
研究内容:围绕重大行业应用和基础科学研究,凝练E级应用软件快速研发对高性能计算的共性需求,在现有研究基础之上,研制应用软件编程框架体系,必须同时涵盖下面五个编程框架:
(1)结构网格编程框架研制及应用示范:围绕我国重大行业结构网格应用软件快速研发的高性能计算共性需求,在现有研究基础之上,研制结构网格应用软件编程框架,用于在E级高性能计算机系统上支持至少20个高效使用百万量级CPU核的应用软件系统的快速研发以及大规模数值模拟。
(2)非结构网格编程框架研制及应用示范:围绕我国重大行业非结构网格应用软件快速研发的高性能计算共性需求,在现有研究基础之上,研制非结构网格应用软件编程框架,用于在E级高性能计算机系统上支持至少10个高效使用百万量级CPU核的应用软件系统的快速研发以及大规模数值模拟。
(3)无结构组合几何计算编程框架研制及应用示范:围绕我国重大行业无网格组合几何计算应用软件快速研发的高性能计算共性需求,在现有研究基础之上,研制无网格组合几何计算应用软件编程框架,用于在E级高性能计算机系统上支持至少4个高效使用百万量级CPU核的应用软件系统的快速研发以及大规模数值模拟。
(4)有限元计算编程框架研制及应用示范:围绕我国重大行业有限元计算应用软件快速研发的高性能计算共性需求,在现有研究基础之上,研制有限元计算应用软件编程框架,用于在E级高性能计算机系统上支持至少4个高效使用百万量级CPU核的
应用软件系统的快速研发以及大规模数值模拟。
(5)非数值图计算编程框架研制及应用示范:围绕我国重大行业大数据处理等应用软件快速研发的高性能计算共性需求,在现有研究基础之上,研制非数值图计算应用软件编程框架,用于在E级高性能计算机系统上支持至少2个高效使用百万量级CPU核的应用软件系统的快速研发以及大规模非数值应用。
考核指标:凝练我国重大行业应用E级应用软件快速研发对高性能计算的共性需求,研制形成跨结构网格、非结构网格、无网格组合几何计算、有限元、非数值图计算的应用软件编程框架体系,在E级高性能计算机系统上支持至少40个高效使用百万量级CPU核的应用软件系统的快速研发以及大规模模拟,网格规模达千亿、粒子数规模达到万亿、自由度规模达数万亿,200万处理器核并行效率达到30%以上,使我国的高性能计算应用编程框架的研发和实际应用达到国际领先水平。
系统2018年完成在E级计算机验证系统和两台国产100PF — 20 —
机上的部署,并对专项支持的应用软件开发团队开放源码。
实施年限:不超过5年 拟支持项目数:1—2项
有关说明:其他经费(包括地方财政经费、单位出资及社会渠道资金等)与中央财政经费比例不低于1:1。
3.高性能计算环境研发
3.1 国家高性能计算环境服务化机制与支撑体系研究(一期)(重大共性关键技术类)
研究内容:研究国家高性能计算环境计算服务化的新机制和支撑技术体系,支持环境服务化模式运行,构建具有基础设施形态、服务化模式运行的国家高性能计算环境。研究内容包括:
(1)资源准入和分级标准
量化网络服务水平和集群计算服务水平,定义资源评价综合指标及综合指标的计算方法、资源服务质量级别和分级标准,作为资源定价收费的基本依据。发展与标准相适应、支持服务水平
量化的软件系统,支持和引导用户合理使用资源,形成全局统筹的资源布局。
(2)环境资源提升
在量化服务的基础上,整合环境各结点的计算、存储与软件资源,实现资源的服务化封装,提升环境资源能力与服务水平。
(3)基于应用的全局资源优化调度
根据应用程序特性和历史运维数据,从理论和实际两个角度分析和确定适合应用程序的集群、队列以及计算规模,结合传统的基于计算规模和运行时间的作业调度方法,形成第三种基于应用特性的全局资源优化调度。结合应用软件本身的特征,分析主流应用软件在不同体系结构、不同能力的资源中的性能特征,作为作业调度的依据。定义队列综合指数,综合排队时间、运行时间、应用类型、计算规模等众多参数,发展系统优化调度的核心算法。
(4)支持多种模式运营的国家高性能计算环境运行管理支 — 22 —
撑平台
研发支持服务化运营的资源管理、用户管理、安全管理、计费管理等管理功能,形成支持环境运行的管理支撑平台,研发支持服务与资源一体的环境监控系统、环境资源优化配置系统等。
(5)具有基础设施形态的国家高性能计算环境构建 建立具有基础设施形态的国家高性能计算环境,节点数14个以上,初步建立服务化运行模式;实现可满足不同客户需求的使用环境;建立国家高性能计算环境安全体系,支持各类高性能计算应用。
(6)超级计算中心运行评价体系
超级计算中心的稳定运行,是提供计算服务的前提和保障。针对提供公共计算服务的超级计算中心,根据用户数量、机时使用情况、用户培训以及超级计算应用效果等指标,建立科学合理的超级计算中心和环境的综合评价体系。
考核指标:完成能初步支持服务化运营的国家高性能计算环
境运行管理支撑平台,建立具有基础设施形态的国家高性能计算环境(一期),节点数14个以上,初步实现以服务化模式运行。完成环境的资源升级,聚合的计算资源200PF以上,存储资源200PB以上,部署500个以上的应用软件和工具软件,用户数达到5000以上。完成超级计算应用综合评价体系,定期发布评价结果。
实施年限:不超过2年 拟支持项目数:1项
有关说明:其他经费(包括地方财政经费、单位出资及社会渠道资金等)与中央财政经费比例不低于1:1。
3.2 基于国家高性能计算环境的服务系统研发(重大共性关键技术与应用示范类)
研究内容:依托国家高性能计算环境,建立行业集成业务平台、领域应用服务社区和高性能计算教育实践平台。促进环境的应用,取得应用实效。研究内容包括:
(1)行业集成业务平台
根据以下重要行业的应用需求和应用基础,建立2个左右行业集成业务平台,例如,石油地震勘探行业应用平台、基于高性能计算的集成电路电子设计自动化(EDA)平台、复杂产品优化设计平台、工程力学设计优化平台等,以灵活的业务流程技术、高性能计算技术和可视化技术,支持相关行业新型业务的发展。
(2)领域应用服务社区
在“十二五”863重大项目应用社区研发基础上,进一步深化应用社区的研发,建立2个有广泛应用需求和较大用户群的应用服务社区,例如,创新工业产品优化设计、新药研发与个性化医疗、计算化学与生物信息、数字媒体、面向中小企业的数值模拟与计算环境等,提供计算服务和解决方案,为计算服务业的建立积累经验。
(3)高性能计算教育实践平台(一期)
面向大学生和研究生教育,建立高性能计算实践平台,为大
学生和研究生教育提供免费机时,形成高性能计算实践环境,培养学生的计算技能,促进高水平人才培养,为高性能计算应用的普及与提高奠定人才基础。
考核指标:研发成功2个行业业务集成平台、2个应用服务社区和1个高性能计算教育实践平台(一期)。每个行业业务集成平台集成50个以上应用软件,服务于200个以上用户;每个应用服务社区提供50种以上应用服务,服务于500个以上用户;教育实践平台服务推广到1000个以上大学生或研究生用户,每年提供2000万CPU核小时免费机时。
实施年限:行业集成业务平台和领域应用服务社区不超过5年,高性能计算教育实践平台不超过2年
拟支持项目数:1—2项行业集成业务平台,1—2项领域应用服务社区,1—2项高性能计算教育实践平台。行业集成业务平台项目要求产学研结合申报
有关说明:行业集成业务平台和应用服务社区项目要求其他 — 26 —
高性能计算平台 篇3
关键词:高性能,仿真平台,构建策略
1 前言
具体来讲, 云仿真平台是一种新型的网络化建模和仿真平台, 它进一步发展了仿真网络, 它结合应用领域的需求, 依据云计算理念, 将各类技术应用进来, 促使人们可以结合自己的需求来共享和重用计系统中的各类资源, 促使网上资源多用户按需协同互操作得到实现, 动态优化了系统的运行。云仿真模式被云仿真平台所支持, 它将网络和云仿真平台利用起来, 对各种仿真资源进行组织, 将各种建模和仿真服务的新仿真模式提供给用户。
2 基于云仿真平台的云仿真系统体系结构
云仿真平台中的云包括两个方面的来源, 首先是用户注册, 其次是云服务商提供。在应用云的时候, 需要按照这样的步骤来进行, 在相应的安全体系内。在网络环境的云仿真平台中。各类用户结合自己的具体情况, 对仿真任务需求进行定义, 然后结合用户需求, 云仿真平台来对资源进行自动查找和发现, 并且结合需求, 来对仿真应用系统进行动态构造。这些资源由云仿真平台来进行管理, 仿真系统的建模和运行由系统来实现。
具体来讲, 包括这些方面的组成部分:一是资源层, 主要是将云仿真平台调度使用的各类仿真资源给提供出来, 不仅包括网络资源, 经过虚拟化封装的建模和仿真资源也是一个重点;二是面向云仿真的服务层, 整合和扩充了原仿真网络的资源服务中间件层和面向应用的核心服务层, 开发了十类共性支持服务, 均面向云仿真模式;三是应用门户层, 提供了浏览器和桌面形式的门户/支持工具, 这样用户就可以对云仿真平台进行登陆, 顺利开展仿真活动;四是应用层, 包括诸多的仿真应用。
3 云仿真平台关键技术
一是问题求解环境技术:在应用门户/支撑工具层中, 非常重要的一个组成部分就是问题求解环境, 它将面向多学科虚拟样机协同仿真提供出来, 同时, 人们的各项操作都可以在大规模体系级协同仿真的高层工具集成环境中运行。问题求解工具集是非常重要的一个方面, 并且满足人们的可扩展需求。主要提供对象是用户。从技术角度上来讲, 问题求解环境将描述仿真系统顶层模型的建模语言给提供了出来, 将元模型技术应用到语言当中, 在对系统的顶层系统模型进行描述时, 分别从静态结构和动态行为两个方面来进行, 并且将虚拟样机设计活动和体系级仿真活动的指令集给提供出来了。基于扩展UML/OMDT/SOM可以描述静态结构, 基于开放混合系统自动机理论可以描述动态行为, 借助于XML规范, 与下层可以传输相关的信息。
二是可视化门户技术:要想将仿真结果数据实时可视化实现于COSIM-CSP中, 非常核心的一项技术就是可视化门户技术, 它可以将2D/3D的仿真可视化服务提供给用户。将B-S多层体系结构应用到云仿真可视化门户中, 包括诸多的组成部分。其中, 视景仿真功能模块由功能逻辑层来提供, 包括诸多方面的内容, 满足人们的各项需求, 如导入地形、更新显示场景、动态海面等等。我们借助于支撑中间件层, 可以将程序开发包给利用起来, 满足人们的需求, 视景仿真以及分布式交互仿真都是可以实现的。对于仿真可视化应用的开发, 可以在视景仿真程序开发包中实现, 利用的是open gvs工具。要想重用分布式交互仿真的可视化模型, 或者是进行其他的操作, 可以利用HLA仿真体系结构来实现。为了服务满足人们的基本功能操作需求, 就可以借助于资源服务中间件层, 如查找可视化资源、动态调度、可视化的封装与调用等等;而可视化模型资源则是由可视化资源层来提供, 如虚拟场景地形、虚拟样机几何模型等等。
三是普适化门户技术:通过调查研究发现, 如今技术开发程度还不够, 依然利用计算机来实现各种建模和仿真系统的访问, 利用桌面计算, 来实现使用模式的应用。在这种模式下, 存在着诸多的缺点和弊端, 因为建模仿真的信息空间就无法连接物理空间, 仅仅是绑定了计算机, 要想进入到建模仿真信息空间中, 需要借助于计算机来实现, 各种服务需求可以得到满足。其次, 要想交互物理空间和建模仿真空间, 就需要由用户来驱动, 如果物理空间的变化被人们所看到, 利用一系列的方法, 来输入到建模仿真信息空间中。而通过普适计算模式的应用, 对这一现状进行了改变。为了促使仿真信息空间和物理空间自发交互的需求得到满足, 将一系列的先进技术给综合运用了进来, 对蕴含式仿真服务框架进行了构建, 以便可以智能化自动化管理仿真服务访问过程。同时, 将移动Agent的迁移机制给引入了进来, 分离了仿真服务的功能性属性和迁移这一非功能性属性, 对仿真服务迁移算法进行了研究。只需要将仿真服务迁移系统模型和仿真服务迁移运动模型给利用起来, 就可以有效描述仿真服务迁移系统的结构组成和仿真服务迁移的基本工作原理。
四是复杂产品项目管理技术:通过相关的调查研究我们可以得知, 在如今的条件下, 产品项目管理需求日趋复杂, 利用目前的项目管理工具, 是无法满足需求的。针对这种情况, 结合具体情况, 来科学界定那些较为复杂的产品项目管理需求, 并且如果产品开发企业中的项目管理较为复杂, 还需要进行科学的分解, 这样就形成了若干个不同的组成部分, 并且从时间、空间和内容等角度, 来对这些部分之间的关系进行描述。
4 结语
本文从系统架构以及关键技术等角度, 探讨云仿真平台动态管理资源, 分析高性能计算仿真云平台的构建策略。相关的工作人员需要不断努力和研究, 创新相关技术, 以便更加科学的构建高性能计算仿真云平台。
参考文献
[1]刘奥, 姚一平.基于高性能计算环境的并行仿真建模框架[J].系统仿真学报, 2006, 2 (7) :123-125.
[2]伊鹏, 郭云飞.高性能交换与调度仿真平台的设计与实现[J].软件学报, 2008, 2 (4) :88-91.
高性能计算平台 篇4
整车零部件的有限元分析是现代汽车设计的一个极其重要的内容,它涉及到车辆动力学、材料学、计算力学和计算机仿真等多学科的综合知识,这些关键技术在汽车产品创新设计过程中的有效使用,是缩短开发周期,节约开发成本的有效途径。基于Web的协同设计环境正好满足其要求,CSCW(Computer Supported Cooperative Work)协同设计的运用,使设计者采用群体工作的方式,从而不同程度地改善了传统设计中项目管理与设计之间以及不同设计阶段之间的脱节,使不同地点的管理人员、设计人员以及用户等都能同步或异步地参与设计工作,从而提高设计的质量和效率[1];而通过Web平台,各个网络成员能发挥各自的优势,以最短的时间实现汽车零部件与整车的有限元分析工作[2]。
本文提出的基于Web的高性能计算协同设计平台,主要针对汽车关键零部件的大规模数值计算有限元分析,借助于已经建立的公共计算服务中心,目的在于为汽车产品的协同创新设计提供一个良好的开发环境。
1 协同设计平台体系规划
协同设计的实施是以划分出一系列子任务为基础,各个设计小组承担不同的子任务[3]。协同设计的体系图如图1所示。
该平台采用B/S三层架构,平台由用户端协作层、服务器层、数据库支撑层组成。最上层为协作层,由若干个设计小组构成,每个小组承担不同的设计任务,通过信息的交流完成设计任务。
服务器端主要实现用户权限判断和功能设计、冲突消除、以及用户共享数据库的管理。服务器层的这些功能通过ASP.NET的编程实现,同时面向协同小组组员的程序通过HTML,ASP.NET,C#,XML来实现,面向数据库的部分程序通过ADO.NET与数据库连接。
该平台采用SQLserver2000作为后台数据库完成数据的存取,同时触发器和存储过程可以执行部分数据计算任务,这减轻了程序设计任务。根据平台的需要,数据库可划分为:
1)用户资料数据库:存放用户的基本信息;
2)用户角色管理数据库:存放用户角色信息及权限,角色由管理员赋值,在赋予用户角色的同时也决定了用户的权限;
3)角色行为数据库:记录用户所拥有角色在任务完成过程中的操作行为,以便解决冲突时的回溯;
4)资料信息数据库:存放设计常用的参考数据资料,以及已有的汽车零部件的CAD、CAE资料;
5)设计数据数据库:储存各协同小组所设计产品的具体参数。
2 协同平台总体结构设计
该平台的结构可以划分4大模块:基本公共模块,中心设计模块,学科设计子模块,以及应用程序模块,结构如图2所示。
4个子模块都需要数据库的支持,且几个模块之间的数据交换都要通过这几个数据库为中介。
3 子模块设计分析
3.1 基本公共模块
基本公共模块由访问安全性管理、公告管理、用户管理、资料管理构成。
在现代企业管理中,机密越显重要,用户需要登录以该平台为依托的网站才可以获取各种信息。因此对整个系统的访问都要通过访问安全管理,它用于控制用户进入系统和进系统后的相关权限,具体包括:用户注册、用户登录。图3所示为登陆平台的整体流程图。
公告栏是平台的门户,用户登录系统后通过公告栏看到当前任务和版本更新通知,能否发布告由用户的角色权限决定。
登陆该平台的用户,可通过用户管理模块查看自己当前的角色和权限,当用户的职位、所在部门等基本资料发生变化时,通过此模块可进行修改并保存在相应数据库中。
资料管理中包含三类资料:公共资料,CAD资料,以及CAE资料。公共资料面向于全部协同设计成员,其存储各种类型的公开性文件,如机械设计手册、国家标准、汽车行业标准等。CAD资料分为汽车零部件的二维图、三维图两大类。为了便于设计者快速查找,每一类中零件模型按照整车结构分为以下几大类:发动机,传动系统,行驶系统,转向系统,以及制动系统。每个系统再通过命名与编号的方式进行详细分解。不同小组的设计者可根据实际需要,直接调用模型,达到资源重复利用的目的。CAE数据库用来储存CAD数据库中三维模型的有限元分析结果,如车身、底盘、悬架系统、和车轮等主要零部件的动力学、强度、刚度、振动、应力、热传导分析结果,各部分零件的分析结果采用与上述CAD文件相似的方法进行统一分类。这些CAE数据为进一步的研究,如汽车零部件疲劳寿命耐久性分析,操纵稳定性分析,行驶平顺性分析等提供参考数据。
3.2 中心设计模块
中心设计模块是该平台的重要环节,它包括任务管理和角色管理。
3.2.1 任务管理
1)任务的工作流管理技术
平台的任务管理主要指管理员对汽车有限元协同设计任务的划分和监控,任务的划分是基础,任务的监控是核心。该平台的一大特点就是在CSCW中融入了工作流技术。
工作流管理联盟(Workflow Management Coalition,Wf MC)将工作流定义为,业务过程的全部或部分自动化,在此过程中,按照一系列过程规则,文档、信息或任务在不同的执行者之间传递与执行。使用工作流可以使应用逻辑与它的信息支撑系统相分离,不修改具体功能模块实现方式而通过修改过程模型来改进系统[4]。CSCW的实质是利用计算机的通信能力,达到各个工作方面的通信、交流、协同工作,而有了工作流技术作为支撑,可以更好的协调有限元分析过程中各个方面的关系[5]。
图4为该协同设计平台的总体工作流程,系统采用调度方式与触发方式来实现工作流引擎的过程,其中调度方式实现监控,其他功能则通过关系数据库中的触发器实现。
管理人员创建新项目后,进行任务分配,确定小组负责人,结果显示在路由节点图上,并发布信息,通知具有权限的小组负责人领取任务。负责人领取任务后,再将任务分配给组员。组员领取任务,可以查看整个任务的安排情况,及与自己任务相关的用户,在设计时利用公告栏,聊天室等协同工具及时进行沟通。任务完成的情况全部记录在监控表上,管理人员可以通过查看监控表上的记录实现进度的实时监控,并且通过关系数据库中的触发器实现路由表上任务分配流程的动态修改,及归档处理等。项目设计过程呈现出:强规律性、强时序性、强逻辑性、强反复性。
2)设计中冲突的消解
在汽车零部件有限元分析协同设计过程中,由于各协同小组成员的专业知识不同,每一个环节中的任务要求不同,缺乏共同的知识表达方法,以及在完成局部设计时尽可能使自己的目标值取最优,较少也较难考虑到其它领域的目标等原因,冲突是协同设计系统必须面临的问题,协同设计的过程就是一个冲突产生和消解的过程[6]。
该平台利用任务管理中的任务批注和任务历史记录进行冲突消除。任务往前推进,有不同设计版本出现时,管理员审批通过后,会在任务批注栏注明版本更新通知,并发布公告,任务历史记录数据库中就记录了不同设计人员的不同版本,这时就需要消解冲突。相关人员看到更新公告后,先人工进行冲突检测,当发现新版本与自己的设计相符合则设置该版本有效,如不符合即与设计者协商讨论,如果协商成功,则冲突解决,否则冲突将提交到小组负责人处,由小组负责人仲裁,如果小组负责人无法仲裁则提交项目管理员。无冲突或已经解决冲突的版本为有效版本,无效版本由管理员删除。
3.2.2 角色管理
该平台采用基于角色的访问控制技术RBAC,RBAC即权限与角色相关联,用户通过被授予若干角色而获得相应权限。管理员根据组织中的职能分工创建角色,同时根据责任和资格授予用户相应角色,通过分配和撤销授予用户的角色来完成用户权限的授予和撤销[7]。
引入角色这个中介,安全的管理就可以根据需要来定义角色,并设置合适的访问权限,而用户根据其责任和权利被指派为不同的角色。整个访问控制过程就被分成了两部分:访问权限与角色相关联,角色再与用户相关联,从而实现了用户与访问权限的逻辑分离[7]。RBAC极大地方便了权限的管理,如果用户的职位与任务发生了变化,只要将用户当前的角色去掉加入代表新的职务或任务的角色即可。在该平台中,每一部分的功能都被设定了相应的权限要求,只有拥有权限才能使用,所有权限要求统一放在权限管理部分。该技术实现了用户与权限的分离管理,保证了数据的安全性。
3.3 学科设计子模块
学科设计子模块完成小组管理与设计数据管理,其主要针对各协同设计小组。
汽车零部件的复杂性与多样性决定了协同设计人员的多样性,为了便于不同小组的管理,平台采用了协同设计小组分类管理的方法。小组成员通过小组管理模块可知道自己所在的协同小组,且当有新任务公告发布时,小组成员根据管理员指示申请加入指定的小组,等待管理员审批,此举使管理员对整个任务安排实现监控。
设计数据管理实现了设计数据的统一分类管理,具体包括CAD二维数据、CAD三维数据、CAE前处理数据、CAE后处理数据、仿真文件,每一类文件同时又按所属项目、上传时间、零部件类型、上传人进一步分类,保证了设计数据的有序性与层次性。小组成员可以根据自己相应的权限进行查询、下载其他相关小组的数据结果,利用平台中的协同工具及时进行沟通,达到协同设计的目的。
3.4 应用程序模块
该协同平台主要面向于汽车主要零部件的有限元分析,需要用到FLUENT、NASTRAN、DYNA等大型有限元数值分析软件,大规模的计算对计算机的需求较高,而且涉及到大量并行计算问题。为了尽可能的提高有限元分析的解算速度,该平台的另一大特点就是建立了高性能计算模块,实现了与企业高性能计算平台的链接,对有限元数据进行统一排队计算,有效地利用超级计算机的CPU、监测并优化其使用率。
需要提交数据计算的小组成员首先新建工程,然后根据设计产品计算量的大小,并通过上传待计算文件栏观察到的各主机的使用情况,选择主机,填写所需内存与CPU个数,最后将需要计算的设计数据提交到计算服务中心,设计数据会根据相应的权限优先级排队等候。计算中心对设计数据进行管理,用户可以在进度表中看到计算的完成情况,当设计数据处理结束后,则可以进行相应的下载。该模块有效地利用了高性能计算资源,实现了设计数据的远程高效计算,大大提高了计算效率。
应用程序模块中还包括各种C A D、C A E软件,如UG,CATIA,ADAMS,ANSYS等,通过该模块可以方便于系统用户快速打开本地的应用程序。而在线聊室,则方便了分布较远的设计者及时的沟通,有利于方案的共享、比较和优化,减少了因重复设计,造成人力资源浪费。
4 基于Pave路谱的整车耐久分析
基于Pave路谱的整车耐久分析是通过有限元方法,对汽车在路面行驶时各部分零件的应力分布情况进行有限元仿真分析。该项目通过此协同设计平台提高了设计效率,达到缩短开发周期,节约成本的目标。
管理员登陆系统,建立项目,并安排工作流进程统筹管理整个项目:1)对整车及路面进行三维建模。2)对整车模型进行有限元前处理。3)对路面模型进行有限元前处理。4)对整体模型进行有限元前处理并提交计算。5)对整体模型进行有限元后处理。整车设计小组可调用设计资料数据库中的汽车主要零件模型进行建模,路面设计小组可查阅设计资料数据库中的公共文件,参考相关参数进行路面建模,小组负责人审核通过后,继续工作流。其它小组直接调用已建好模型进行各自任务,同时,通过应用程序模块及时沟通。在涉及到解算处理时,相关的任务负责人通过高性能计算模块提交有限元前处理模型至高性能计算中心。最后小组负责人对任务进行审批,验收合格后将结果提交到相应数据库,项目流程如图5所示。
5 结论
面向汽车关键零部件有限元分析的高性能计算协同设计平台,有效地利用了协同设计的理念,很好地解决设计者分布在较大的范围内,沟通不便,而造成人力资源浪费的问题。B/S结构,Web技术,以及数据资源管理技术的合理运用,使多个关联的设计工作能协调高效地完成。工作流管理技术的概念的运用,更加有效地实现了对项目任务的实时监督。同时,该平台内含有超级计算机中心的链接,为CAE等需大量计算的设计工作提供了便利。在高知识含量的新产品为竞争核心的新时代,该平台符合了提高设计效率,降低设计成本,缩短产品开发周期的要求。当然为完善该平台在各个模块的功能还有许多工作要做,相信在不久该平台必将更加完善。
参考文献
[1]张志胜,史金飞.颜景平.基于Web的协同设计冲突消解系统研究[J].制造业自动化.2003,25(5):16-19.
[2]石德乾.基于Web的设计制造资源共享技术研究[D].四川:四川大学,2003:1-3.
[3]常锋娟,刘苏.基于web的协同设计系统[J].机电工程技术.2004,4(33):49-51.
[4]王文斌,等.机械设计手册(新版第6卷)[M].北京:机械工业出版社,2004.
[5]李智,李亚桥.基于工作流的协同设计系统应用[J].中国民航大学学报.2007,7(25):118-119.
[6]张志胜,史金飞,颜景平.基于Web的协同设计冲突消解系统研究[J].制造业自动化.2003.5:16-19.
高性能计算平台 篇5
20世纪90年代以来, 我国高等教育加大了改革步伐, 明确提出高等教育要培养具有创新精神和实践能力的高级专门人才, 要重视培养大学生的创新能力、实践能力, 其能力的养成须在科学合理的环境中逐渐形成。高性能计算平台已经是信息研究领域中必不可少的基本工具, 正在改变许多传统科学的研究方式和面貌, 一方面, 基于高性能计算平台的研究与应用已经渗透到信息化的各个领域, 用人单位需求掌握高性能共享计算平台应用、甚至研发的人才, 另一方面理工科院校在进行本科教育和研究生教育时也需要通过高性能共享计算平台提高学生的创新实践能力。在当前条件下, 如何充分发挥平台优势与效用, 构建科学合理的实验体系, 更好的为创新型人才培养服务, 是实验室建设与改革过程中急需解决的问题。
2 原有实验体系的不足
目前, 诸如“能源、金融、生物、物理、气象、电信、多媒体”等领域均需要大量的科学计算, 实验数据激增, 数据处理需求直线上升, 且这些数据具有海量、异构、密集的特点, 有许多科学和工程中的复杂问题需要解决, 如通信网络设计、空间地理环境建模、多媒体处理等, 需要有强大的计算环境作为支撑, 而传统的实验教学环境, 主要以满足实验数据少, 信息处理量不大, 非并行的实验, 且大部分是以学生个体为中心进行的, 学生与学生之间相对独立, 每个学生只需要做自己的实验就可以了, 无需关心同学之间相互协作和相互关联的问题。当前实验室现有设备很难满足以上相关实验要求, 这对于进一步深化教育教学改革, 切实提高教学质量及学生就业能力而言, 是十分不利的。例如:在oracle数据库实践教学中, 如果将每个学生的终端分别安装oracle数据库, 不仅不利于资源的共享, 也不能充分发挥oracle数据库的并发处理的优势, 而且还不利于某些知识点的讲解, 比如涉及操作数据库加锁解锁问题时, 如果每个学生单独使用一个数据库, 教学效果根本无法体现, 反而学生会认为加锁解锁这个过程没有必要, 只是在浪费时间, 但如果采用高性能共享实验平台, 所有学生共同使用一个数据库, 每个人对数据库的插入删除等操作, 都会影响到其他人, 这时他们便能体会到加锁解锁的意义。因此, 构建开源的、开放的、相互关联的、可共享的基于高性能共享计算平台的实验教学体系十分必要。
3 高性能共享计算平台
高性能共享计算平台 (HPC) , 配置了机群管理、作业提交、作业调度、并行计算、各类编译工具及数据库等环境, 平台结构如图1所示。
该平台集科学建模、算法设计、软件研制和计算模拟为一体, 较大程度实现了资源的整合与开放共享, 能为有计算和信息服务需求的课程实验、实践、科技竞赛等提供平台支撑, 开设一系列综合型、设计型、创新型、研究型实验项目, 在解决工程、管理、服务等领域的实际问题中, 能较好的培养学生实践创新能力。例如:在汽车碰撞试验中, 通过高性能计算平台模拟3D汽车模型碰撞的过程, 学生可以直观的观察到汽车在碰撞过程中所发生的细节以及汽车碰撞中需要进行安全保护的模块, 激发学生围绕汽车安全问题设计出新的汽车安全保护装置;又如, 在分子结构模拟中, 通过高性能计算机模拟出分子的三维图像, 这种直观的教学方式相比传统的枯燥的理论教学给学生留下的映像更加深刻, 更能激发学生对专业课程的兴趣。
4 基于高性能共享计算平台的实验体系构建
4.1 构建原则:
(1) 充分发挥高性能计算平台的技术特性:为实验数据量大、信息处理能力强、运行速度快、需要并行计算的各类实验提供支撑, 以弥补原有实验体系的不足。
(2) 以学生为主体:以实践创新能力提高为目标, 充分考虑学生实际情况, 循序渐进科学合理地安排实验, 避免产生“望而却步”的情况。
(3) 面向就业市场需求:在设计基于高性能共享计算平台实践环节时, 充分考虑用人单位需求, 贴近工程应用实际, 既能充分保证学生就业, 又能激发学习兴趣。
(4) 依托科技竞赛, 科学引导科技创新活动:高性能共享计算平台采用“开放实验室”管理模式, 为每个申请学生分配一个账号, 依托“电子竞赛”、“数模竞赛”、“程序设计竞赛”、“微软杯全球创新大赛”等科技竞赛, 开展本科生、研究生科技创新活动, 指导学生发表科研论文, 申请专利。
(5) 重点培养学生科学研究素养:依托本平台, 在指导学生各种科技竞赛基础上, 强化学生科学研究思维及素养, 培养学生开展科学研究和工程实践的能力。
4.2 实验体系构建
根据“强化基础、提高能力、重在创新”的实践教学思路, 依据构建原则及高性能共享计算平台特点, 搭建系统的实验教学体系。该实验教学体系总体分为:基本能力培养和创新能力培养两个层次。其中基本能力培养包含基础训练类实验和综合设计类实验, 创新能力培养包含工程实训类实验和创新拓展类实验, 如图2所示:
5 结语
重庆邮电大学高性能共享计算平台已投入使用两年多, 在并行计算、C语言程序设计、数据库应用、基础物理分子计算等教学领域应用较多。目前, 从教学使用情况来看整体效果良好, 今后需进一步普及高性能共享计算平台基础知识, 定期进行高性能共享计算平台最新知识的讲座和指导, 使高性能计算共享平台成为本科生、研究生锻炼实践创新能力的首选平台。
随着社会分工的进一步细化和就业压力的不断增大, 社会对专业技术人才培养提出了更高更具体的要求, 而实践教学环节是人才培养方案的重要组成部分, 是培养学生知识应用能力和创新能力的重要手段, 基于高性能共享计算平台的学生创新实验构建是对人才培养的必要补充。同时, 以高性能计算为基础的平台在教学科研等领域的广泛应用, 为进一步提升该平台的功用, 甚至构建云平台提供了良好的支撑。
参考文献
[1]赵希文, 吴菊花, 燕杰.大学生创新能力训练体系与方法[J].实验室研究与探索, 2010 (10) :67-69
高性能计算平台 篇6
在全国各地相继建立高性能计算平台(以下简称平台)的大环境下,人们的目光不应只是放在平台设备的购置或是计算能力的提高上,因为公共平台建设不是简单的设备购置,更需要将硬件购置和技术创新相结合[3,4,5]。平台在高校中所处环境的特殊性,决定了平台必须明确定位,将科研创新和人才培养相结合,开拓新的服务模式。
1 明确定位,以“服务用户”为宗旨
一方面,随着高性能计算需求的增加,国家及各地方政府、研究机构加大对科学计算的投入,纷纷建立各自的高性能计算中心。这就使得高校的高性能计算平台从建立伊始就面临着外部激烈的竞争压力;另一方面,校内各课题组根据科研需求购置的大量中小规模高性能计算设备,也分散了平台的用户群体。因此,如何搞好服务,吸引用户使用,发挥校级公共平台开放共享的作用是高校高性能计算平台面临的首要问题。
1.1 共享平台,有“偿”使用
平台作为校级的公共计算资源,应当以服务校内用户为己任,免费为校内各院系师生提供服务。但是为了充分发挥平台的功用、调动用户的使用积极性,平台的使用又应当是有条件的。合理的解决办法是为用户设置优先级,在资源不够的情况下,允许高优先级的用户抢占低优先级用户的资源,充分保障高优先级用户的使用时间。优先级的划分可依据因子:
γ=上一年用户发表的成果/上一年该用户的平台使用时间
成果的统计可依据学校对科研成果的分类办法来进行。
1.2 公共资源,公共管理
平台作为校级的公共资源,理应为校内用户所共有。对平台的管理和调整需要尊重广大校内用户的意见[6]。这就类似于一个住宅小区的公共资源,为广大业主所共有一样,小区物业只负责公共资源的日常维护及管理。校内的广大用户就是平台的“业主”,平台的运维人员就充当了“小区物业”的角色。要建立起校内师生对待平台的主人翁意识,在使用中爱护资源,在管理上群策群力。
在用户公共管理的基础上,邀请校内各领域专家用户和上一年度使用资源较好的用户组成用户委员会,对平台建设和运行等各方面给予指导与监督。这样既保证了用户委员会的专业,又保证了用户委员会的民主。
1.3 开放的服务模式
作为校级公共的计算资源,平台应当以服务用户为宗旨,为校内的院系、科研团队提供稳定、高效的计算服务[7,8]。同时,在满足校内需求的前提下,平台应当结合自身条件将服务拓宽到面向社会用户、考虑向社会提供多种形式的服务,满足社会用户的计算需求,并充分发挥自身优势开展技术咨询和研发服务。
2 整合学校多方资源
作为校内最大的计算资源提供者,依托自身的硬件实力和校内别家单位不具备的影响力,如何整合学校多方的资源,尤其是一些闲散的设备,将其纳入一个统一的机制来提供服务,是很重要的问题。
2.1 整合校内计算资源
平台作为校级的计算资源,是学校斥巨资所建,无论从硬件条件、计算能力、软件数量,还是从人员对设备的管理上,都是校内各院系、各课题主所不具备的、无法匹敌的。因此,在用更强大的计算能力、更稳定的运行环境和更完善的管理制度来吸引校内用户使用平台的同时,也不应该舍弃各课题组原先自行购买的中、小级计算资源。平台一方面为原先分散的用户提供服务;另一方面需要将用户之前的设备整合进来,统一使用、统一调度,指派给对计算要求不高的用户使用。既满足这些用户的计算需求,又减轻了平台的使用压力;既保障了大计算量用户对平台的使用,又使得中、小级计算资源没有浪费。
2.2 整合校内存储资源
由于高性能计算平台对机房环境的严格要求,促使学校在建设平台的时候就按照极高的标准来建设机房的物理环境,也就造成在校内鲜有机房能与之媲美。因而,在面向用户宣传平台供电系统、冷却系统和监控系统的优势的同时,完全可以吸引用户将各自课题组的存储设备纳入平台中来统一管理。这样做既节约了学校重复建设机房的开销,又大大扩充了平台的存储能力,解决高性能计算海量存储的需求。
2.2 整合学校网络资源
平台需要与用户交互,还需要提供用户上传、下载数据的通道,这就要求平台不仅仅提供计算,还要依赖可靠的网络作为支撑。打造以高性能计算为首要服务,以云计算、云存储为辅助的校园数字化信息平台。
3 科学研究与人才培养相结合
3.1 归纳各科研领域中实用的科学计算技术
由于科学计算的复杂性和所用计算软件的特殊性,我们在为不同学科的用户提供服务的同时,针对不同学科所用的计算软件和计算工具的不同,需要帮助课题组建立平台使用的专业的人员队伍,在课题组内部形成博士生指导硕士生,硕士生指导本科生的梯队,最终提高团队的高性能计算平台和相关计算软件的使用水平。
3.2 理论与实践相结合
平台在为科学研究提供服务的同时,不应当忽视其能够在教学方面发挥的作用。在日常的教学中,利用平台自身的软件、硬件优势,承担高性能计算相关的实验课程,帮助学生理论与实践相结合。平台管理员依靠自身在集群架设方面的专业知识,指导学生使用多台计算机组建集群,模拟并行环境,增强学生的实践能力。
3.3 联合校内相关社团
平台大部分用户为非计算机专业人员,对高性能计算并不是很熟悉,甚至于对基本的linux使用都不是特别了解。针对这样的情况,我们应当联合校内相关的社团组织,如“linux爱好者”等,举办“高性能计算之夜”等学术沙龙,有计划、有针对性地开展培训和讲座,帮助用户掌握高性能计算所需的专业知识。既节约了高性能计算平台管理员的时间,又充分发挥了校内社团的群众基础和优势,还能达到很好的培训效果。
4 大力宣传和推广平台
为了宣传和推广高性能计算平台,我们需要做到“引进来、走出去”。“引进来”,指的是要将当前领域内的重大热点引入校园,定期组织有关的学术报告,对于云计算、云存储这样的新兴热点和技术,既做到让学生对新技术有所了解,又推广了高性能计算平台的使用。“走出去”,指的是组织学生积极参加高性能计算大赛,从硬件的架构,到开放源代码移植、并行算法研究、串行程序并行化、计算设计过程优化,甚至是基于多机环境的批处理作业,指导学生从高性能计算的各个方面进行学习,在参与比赛中学习、提高,在水平提高中增强学生比赛的实力。
5 结束语
作为科学研究和人才培养的重要环节,高校建设高性能计算平台的需求也越发迫切。但是由于高校和高性能计算中心之间定位和体制的不同,高校建设的高性能计算平台所承担的角色和开展的服务就与一般的科研机构或者商业公司建设的高性能计算中心不同。高校所建的高性能计算平台,要以数字化校园建设为核心,整合校内多学科计算资源、应用资源和人才资源,构建学校公共服务体系中的科学研究支撑平台,理论联系实际,科研和教学相结合,走一条与普通高性能计算中心不同的服务道路。
参考文献
[1]林新华.走出高性能计算中心的建设误区[J].中国教育网络,2009(5):42-43.
[2]林新华.上海交大高性能计算中心的变迁[J].中国教育网络,2010(1):50-51.
[3]林皎,张武生,徐伟平.高性能计算平台开放服务的探索与实践[J].实验技术与管理,2012,29(3):334-336.
[4]关伟豪,吴汝明,郭清顺,等.中山大学高性能计算服务平台的建设[J].实验技术与管理,2011,28(4):303-306.
[5]闻星火,梁国华,黄乐.大型仪器开放服务的实践与思考[J].实验技术与管理,2007,24(6):1-5.
[6]胡宁,孙世媛,张锐.大型仪器平台建设与管理的实践[J].实验技术与管理,2010,27(10):16-18.
[7]朱平,朱建涛,高剑刚,等.高性能计算存储关键技术研究[J].计算机研究与发展,2011(48):354-364.
高性能计算平台 篇7
1 高性能计算机海量数据处理概述
1.1 高性能计算机海量数据处理的应用
近年来云计算技术得到飞速发展以及广泛的应用, 数据密集型应用成为了主流应用的发展模式。大型公司控制云计算的应用研究, 借助云计算为用户提供各种应用, 在这一过程当中, 面临海量数据处理的要求。在目前的发展态势之下, 用户还有应用平台的规模发展非常的迅速, 过去用处理数据的相关技术可以说无法满足这一发展态势的要求, 这也就要求开发更为合理的平台还有效率更高的方法来做好大规模数据的处理工作。不过目前的情况是, 很多性能非常高的计算机, 它们的主要任务集中在进行那些非常复杂的科学计算, 也就是通常人们所说的计算密集型的领域和缓解, 比如石油的开采以及勘探, 还有大飞机制造过程当中的模拟等领域。这部分领域的密集型的计算机计算, 常用的接口就是传递接口 (MPI) , 在这个接口条件下, 程序员的主要任务就是有效地分配不同的节点彼此之间消息的沟通以及交流, 编程的结构是不可能实现自动化的并行性, 所有的并行性都是由程序员手工调试来完成的。这也就使得那些性能非常强悍的计算机在处理大规模的数据的时候, 对用户可以说是非常不友好的, 还需要用户不停地进行任务的划分还有任务的分配, 从而做好所有数据的准确处理。科学计算可以说是到目前为止性能强悍的计算机最为常见的发挥作用的地方, 并且MPI接口的编程在变成的自由性还有灵活度方面都比较高, 所以已经成为了计算机在用来进行复杂计算过程当中最为常用的编程规范。
探索面向高性能计算机的海量数据处理平台实现, 有着重要的现实意义。一方面是能够大大丰富高性能计算机应用的领域。在云计算的时代, 海量数据型的应用逐渐反正成为了主要的应用模式。目前情况下, 高性能计算机应用虽然局限在传统科学计算的领域, 但是其在海量数据处理领域有着广阔的应用潜力。应用牵引可以说是高性能计算机持续发展最为主要的动力。除传统科学计算的领域外, 能够进一步扩展高性能计算机用途, 成为目前高性能计算机发展面临的重要问题。高性能计算机有着异常强大的计算和存储的能力, 所以在用于科学计算之外, 要是可以高效用到云计算领域中的海量数据处理, 能够进一步拓展高性能计算机使用的范围, 从而有利刺激高性能计算机进一步发展。另一方面, 高性能计算机在海量数据处理平台当中的也可以作为云平台的操作系统基础加以研究, 从而进一步深化云计算过程当中高性能计算机中的应用水平。在云计算的背景下, 应用类型非常丰富, 导致数据规模急剧膨胀, 因此如何改善海量数据处理效率成为制约云计算发展的掣肘。简言之, 高性能计算机用来实现海量数据处理平台并加以优化, 可以完善高性能计算机云平台系统基础。
1.2 高性能计算机海量数据处理的难点
高性能计算机处理海量数据面临着很多现实困难。第一, 高性能计算机处理海量数据, 需要支持Mapeduce模型。在密集数据应用领域, Map Reduce模式成为事实标准, 高性能计算机处理海量数据, 需要兼容已有数据密集应用, 同时要支持Map Reduce模式, 这样一来就无法使用传统MPI模式, 而需要部署Map Reduce架构。Map Reduce架构面向普通的商业机器集群, 不过Map Reduce架构还无法保证适用于高性能计算机结构并高效运行。第二, 需要根据高性能计算机的结构, 来对Map Reduce设计加以改进, 确保可以高效运行在高性能计算机上面。为确保Map Reduce设计可以最大限度适应于高性能计算机结构, 需要针对Map Reduce运行当中不同阶段对于硬件资源需求加以深入分析, 同时结合高性能计算机同商业机器集群的结构区别, 来改进Map Reduce设计。这就要求将Map Reduce的性能, 同运行数据密集应用的特征还有高性能计算机硬件的资源特性结合起来, 从而找到使性能最优的途径。
2 高性能计算机海量数据处理的实现与评测
2.1 高性能计算机海量数据处理的设计
高性能计算机有着强大计算存储能力, 使用集中存储系统, 所以能够进行海量数据的处理, Map Reduce架构同普通集群有所区别, 高性能计算机的集群文件Lustre能够为计算节点提供存储视图, 不需要分布式的系统HDFS, 之所以保留HDFS, 因为Map Reduce需要使用HDFS的专用接口访问数据, Lustre上还未提供此类接口[1]。高性能计算机的Map Reduce设计中, 计算节点不是将数据放在本地, 而是共享集群文件当中, 针对这一情况需要进行设计上优化, 例如Map Reduce中存在混洗 (shuffle) 过程, 也就是map任务的结果需要传输到不同reduce任务的节点, 这些结果数据主要通过节点间网络实现传输, 同时比较耗费网络的带宽, 同时在集群文件使用的情况下, 全部节点看到同个名字空间, 能够从集群文件读取数据, 因此可以省去计算节点间传输的过程, 从而减少网络数据的传输量, 也可以避免计算节点间网络带宽而导致的系统性能瓶颈。要想省去节点间网络传输计算的过程, 就需要修改HDFS, 使用Hadoop文件系统, 从而实现HCFS系统。为确保高性能计算机可以高效处理海量数据, 就需要借助实验来评测Map Reduce的性能, 并找出高性能计算的环境中, 那些影响Map Reduce性能的主要因素。影响Map Reduce的主要有三个方而, 即处理器的计算速度、存储读写速度以及网络传输的速度, 这就要求针对这些因素提出相应解决措施。
2.2 高性能计算机海量数据处理的优化
在过去的机器集群里面, Map Reduce架构主要发挥作用的地方也就是存储信息还有计算, 这些地方使用该架构都是可以根据节点的增多而不断地实现线性的扩展的。也就是说在具体计算的过程当中, 随着需要计算的节点数量的越来越多, 会有越来越多的节点参与到Map任务还有就是Reduce任务的具体计算的过程当中, 也就是说计算的能力是随节点数目的不断地增长而不断地实现其线性扩展的。在存储数据这一块, 分布与不同的节点的文件的数据信息块, 就需要使用应用级的HDFS来进一步加以调用和组织, 从而构成系统逻辑的空间, 同时HDFS层能够为Map Reduce提供I/O服务, 并且总容量以及I/O能力, 也是随着节点的规模而实现线性扩展。此外, 高性能计算机存储子系统, 可以提供I/O的能力收到存储子系统规模的影响。传统上使用高性能计算机, 往往局限在传统计算领域, 计算能力优于I/O能力。这样配置导致高性能计算机I/O能力难以满足数据密集型处理的需要。要想扩展存储子系统容量以及I/O能力, 就需要增加存储子系统规模, 例如在磁盘阵列当中使用RAID, 经济方面比较昂贵。因此在节点规模大并且计算能力比较强的高性能计算机中, 利用已有存储子系统提供的I/O带宽来优化Map Reduce性能, 成为高性能计算机海量数据处理的设计优化的重要步骤。
海量数据处理对系统计算能力的要求并不高, 但是对系统I/O能力, 例如网络数据的I/O能力还有存储数据的I/O能力这方面的要求都比较高。第一, 中间结果的数据传输优化。在使用高性能计算机的专用存储系统为计算提供存储服务的过程中, 同分布式的DFS把数据块在从物理的角度进行分配和存储, 然后使用一个相同的名字来调用, 存储在集群文件里面的数据在物理角度本身就是集中放在一块的。也就是说Map Reduce架构里面Map任务的当中的结果从物理层次这一角度来看, 就是成块地存放在存储系统里面的, 而不是像过去那样分割之后存储在一个又一个不同的节点里面, 这样一来就可以为中间结果的数据通信提供了非常良好的前提条件。一般来说, 后续的作业会进一步划分成一些连续的任务, 也就是通常人们所说的Map任务还有Reduce任务。其中Map任务最为主要的作用也就是对输入进去的键值加以处理, 从而得到输出键值的序列。一般情况下对输入键值加以处理, 往往得到不同的输出键值。Map任务就是在Map阶段结束。Reduce任务工作当中, 能够进一步分成Merge、Shuffle以及Reduce这三个不同的阶段。Shuffle阶段主要的人物是将需要的中间键值从Map当中抓去过来。Map任务产生的键值对借助于划分函数而到达Reduce任务。划分函数能够在很大程度上决定当中央键值划分还有分配。Merge的常见任务也就是把Reduce任务里面得到的类似的那些键值进一步处理, 也就是说在Reduce这一环节, Reduce函数要不断地执行, 这样一来就可以得到想要的结果。当中央的结果还能够从Map的节点里面, 通过网络来把得到的结果发送给Reduce任务里面的各个不同的节点, 这些工作几种于Shuffle阶段完成。所以当中央的结果就是不断改善数据传输的效果。因此中间结果存储于不同物理节点方面, 并借助于网络来传输数据。高性能计算机仍然通过执行Map的节点来读取, 然后通过网络传输到各个Reduce节点。这一环节的逻辑结构正确, 能够保证Map Reduce准确实现。不过这一设计同高性能计算机的集中存储结构不适应而需要改进优化。
第二, 集中存储系统设计优化。高性能计算机的Map Reduce将中间数据存储在专用的存储系统当中, 专用的存储系统对计算节点而言, 是统一逻辑的空间, 而非独立分开的存储系统。因此Map任务应当将中间结果信息以及存储信息传输给Reduce任务, 专用的存储系统读取中间结果就能够交给Reduce自身来实现。这种策略可以避免Map任务节点在读取中间结果并借助于网络来传输的整个过程。同时在具体实现的过程当中, 仍然可以保留Reduce节点以及Map节点间所建立起来的HTTP链接, 这是因为Map需要借助于HTTP将中间结果信息存储传输给各个Reduce任务。除此之外, 磁盘阵列管理的Lustre系统当中, 通过微中间结果建立硬链接方法, 同样可以实现类似效果。
第三, 中间结果存储优化。在高性能计算机的存储子系统当中, 可以提供I/O的能力主要受到其存储子系统规模的影响和限制。因此如果将中间结果同输入的数据以及输出结果的一同集中存储于存储系统当中, 就在很大程度上加重了存储系统的I/O人物量。在一开始的Map Reduce当中, Map产生的中间结果并不会写入分布式的DFS文件系统当中, 而是存储在Map所在的节点文件系统当中。所以在优化的过程当中可以借鉴这方面设计, 将中间结果暂时存储在本地节点, 从而降低集中存储给数据I/O带来的压力。
第四, 本地存储结果设计优化。高性能计算机的存储子系统的专用的, 并且存储子系统容量以及I/O扩展能力的代价非常昂贵, 因此在高性能计算机中处理海量数据的时候, 存储系统I/O带宽, 往往成为比网络的I/O带宽更为珍贵的资源。因此在高性能计算机上优化Map Reduce的架构性能过程中, 需要对存储系统的I/O加以优化, 同时比网络传输I/O来优化有着更加严峻的需求, 尤其是考虑到高性能计算机的Map Reduce数据流I/O数据流。全部的Map任务结束后, 都需要将中间结果的数据存入到存储子系统当中, 不过在Shuffle开始后, 又需要从存储子系统当中读取中间数据。首批的Map任务结束后, Shuffle环节就已开始, 这样读操作以及写操作的步骤都需要占用带宽, 导致读写的速率远远无法达到磁盘阵列的设计水平, 换言之, 实际的性能往往比模型计算得到的结果要差得多。尤其是在具体应用数据量同计算的量比例越大的时候, 或者是产生中间结果的数据量同输入的数据量比例的DE/DI越大情况下, 这一差距也就会变得更加明显。这就应当考虑使用分布式系统设计降低I/O的压力。
2.3 高性能计算机海量数据处理的评测
高性能计算机部署Map Reduce, HDFS将数据块放在集群系统Lustre上, 对100GB数据加以排序, 并使用优化后的HCFS以及集群系统Lustre, 来优化混洗阶段的数据传输对100GB数据加以排序, 最后不使用Lustre系统, 将数据放在本地磁盘Linuxext3系统中排序100GB的数据[2]。结果发现高性能计算机实现海量数据的处理, 处理器的运算速度以及网络传输的速度并不会带来系统瓶颈, 整个系统的性能瓶颈是存储系统读写的速度, 也就是说在任务数很多的条件下, 高并发导致竞争使得Lustre系统性能下降严重, 无法达到专用存储的性能评测值。这是因为在Lustre系统中, 文件被条带化存储于不同的逻辑卷LUN中, 也就是文件划分成条带放在不同LUN中, 从而提高文件访问时并行的读写能力, 一个HDFS块条带化后存储于Lustre中, 放置在20个存储对象 (OST) 里面, 同时Map Reduce为每个HDFS数据块都指派map任务, 意味着map任务必须同20个OST交互, 从而导致Lustre系统资源出现竞争, 高并发引起的竞争冲突, 导致Lustre无法发挥并行I/O优势[3], 所以高性能计算机为高效处理海量数据, 首先要解决Lustre系统资源的竞争问题, 同时改善存储系统的I/O速度。
综上所述, 计算密集型应用往往是基于消息传递接口 (MPI) 来实现的, 程序员处理节点间的通信, 编程框架无法够自动发现并行性, 需要用户负责任务调度划分并管理数据处理的平台。这就要求进一步规范编程标准来发挥高性能计算机在海量数据处理中的应用价值。
参考文献
[1]张武生, 薛巍.MPI并行程序设计实例教程[M].北京:清华大学出版社, 2013:265-268.
[2]陈国良, 吴俊敏.并行计算机体系结构[M].北京:高等教育出版社, 2012:401-405.
高性能计算平台 篇8
本文提出一种基于混合云模式的数字内容分发平台。采用分层的云—端 (客户端) 计算 (Cloud-terminal Computing) 模式分散突发流量。该模式包括从平台进行的主推送、内容提供商作为从推送方, 必要的时候, 已有内容的客户端也可以被主平台选作可控的P2P推送方式。
如图1所示, 该拓扑结构基于分布式理念的互联云结构主要由主云 (供应方云) 和客户端云构成。供应方云主要是由运营商构成, 该平台可以采用IT云计算的理念主要进行Iaas的基础建设, 同时和诸多CP和SP的云服务提供商进行网际互联共同组成供应方云, CP和SP可以有针对性地进行PASS和SAAS建设。客户端云主要是通过和边缘服务器云进行连接来享受云计算服务。
2 供应方云和客户端云建模研究
假设: (1) 设整个过程中这h个文件被下载次数分别为m1≥m2≥……≥mh。记M=。
(2) 由于一般可以认为文件被下载的次数近似满足Zipf分布, 可以假定mi的分布也近似满足Zipf分布, 即, 其中C和-为常数。
(3) 假设视频业务的需求变化相对缓慢, 而且以前被请求的文件仍存在缓存中。
(4) 假设系统中可存储的文件有h个, 每个文件大小为G。
我们所建的模型主要从边缘CDN节点来进行分析, 上面为本文所要用到的参数列表, 假设整个网络中的CDN节点个数为n, 同时系统中所有的缓存总量为S;m=k/n, 总连接数除以CDN节点个数。
我们假设在某一个时刻某一个CDN节点上文件的用户数为m个, 我们假设某一个CDN节点此时正在工作, 那么直接命中从该CDN节点命中下载的用户b个和另外的c个用户共同使用下行带宽d, 相对于没有直接命中的c个用户, 共有n*c个用户来共同分享带宽e, 他们的下载时间为G*b/d+G*n*c/e, 则总体下载时间的期望为:
我们假定每个CDN节点的换存量是相等的, 则为S/n, 则可以存储S/h G个文件, 依据假设当前用户下载人数最高的就是缓存中存的S/h G个文件, 则我们可以得到
, 则我们可以假设当k比较大的时候我们可以得到下式:
结果只与参数有关系, 我们可以把=1视作一种特殊情况, 则我们继续计算得
则我们可以得到, 则我们得到了最后CDN总体下载的时间平均值,
, 其中有关。
由上式, 我们进行与实际情况得简单赋值可以得到tc与n, d, e, s的变化关系:tc随着n变大而变小, tc随着d变大而变小, tc随着s变大而减小。
表1 CDN模型参数列表
综合以上分析, 我们可以得出以本文提出的混合云计算网络拓扑结构中供应方云的性能与CDN网络中的节点个数、缓存总量、用户下行带宽和到服务器的下行带宽都成反比的关系, 这些性能恰恰决定了一个供应方的CDN网络的质量, 而在现实情况中电信运营商的供应方云的CDN网络架构, 在这几个方面都是由于从供应方云的, 所以我们可以得出结论, 由主云推送的期望时间要小于从供应方云。
3 客户端云建模分析
可控P2P的建模分析和一般P2P的建模分析区别是, 普通的P2P用户可以通过互联网进行无限制的下载, 而在可控p2p内部, 用户是通过自治域内通过一定的机制直接从其他用户处找到所需资源并开始进行下载并接收到自己所需要的业务内容;由于所采用的算法不同严重影响着业务推送的时间, 本文使用现如今比较通用的Bit Torrent (BT) 算法来进行建模研究, 在这里本文主要讨论下载的时间, 对节点的查找延迟在这里暂时忽略。
该模型使用到的参数列表如上图所示, 自治域内的用户数为n, 我们在这里假设这n个用户数上下行的带宽是一致的都为p, 每个用户的缓存容量也是相同的为G/n, 假设用户可以由两种途径下载到文件;
(1) 缓存中保存有完整该文件的用户;
(2) 某些下载比率比自己大的用户。
假定正在下载的用户已下载的部分符合均匀分布, 其中某个文件i的下载比率为r, 则可以从另外mi* (1-r) 个用户中进行下载。从我们要求的是期望来计算可以约等于有mi/2个用户可以提供下载, 由于在自治域内, 有G*mi/M的空间用于保存已接收到的第i个文件;所以我们可以计算出共有x处可下载文件i, x=mi/2+G*mi/M。
表2 P2P模型参数列表
我们希望求得的是每个下载的平均时间, 在模型中我们假设了每个用户的带宽为p, 这里的上传带宽总共有xp, 在这里其他M-mi个连接假设平均分配给了A个用户, 所以总的下载连接数为mi+ (M-mi) *x/n, 下载的速度可以表示为px/ (mi+ (M-mi) *x/n) , 所以我们可以得到第i个文件的下载时间期望为:TP=G (mi+ (M-mi) *x/A) /px, 于是我们得到了P2P下载时间的平均值为:;这个式子TP可以利用求导来进行分析。由式子我们可以分析出自自治域内P2P的平均下载时间综上所述, 我们得到了在整个网络拓扑结构中从供应方云和客户端云得到服务的响应时间, 接下来我们研究响应时间和各个参数之间的相互影响关系;为了方便我们的分析, 我们假设G=1, A=50, P=1, M=100;我们将G=1, A=50 P=1, M=100, mi=10进行简单赋值来得出tp与Gp的关系。
4 结语
由CDN网络中的性能分析, 我们可以得出供应方云的性能与CDN网络中的节点个数、缓存总量、用户下行带宽和到服务器的下行带宽都成反比的关系, 这些性能恰恰决定了一个供应方的CDN网络的质量, 而在现实情况中电信运营商的供应方云的CDN网络架构, 在这几个方面都是由于从供应方云的, 所以我们可以得出结论, 由主云推送的期望时间要小于从供应。