天河2号上CPU/MIC协同的分子动力学模拟软件GROMACS并行加速技术研究

来源 :国防科学技术大学 | 被引量 : 0次 | 上传用户:AFI123456
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
分子动力学(MD)模拟是一种使用牛顿经典力学模拟微观粒子运动来获得原子体系的宏观性质的模拟方法。GROMACS是一款由格罗宁根大学研发的用来做分子动力学模拟的主流软件,目前已经经过几十个版本的加速优化,包括常见的MPI、OPENMP、GPU和SIMD等,优化体系十分完善,该软件功能强大,用户友好,能够满足几乎所有常见的原子体系模拟需要。目前,使用GROMACS软件来进行分子动力学模拟最大的问题是软件运行周期过长。2014年,由中国国防科学技术大学研发的“天河2号”超级计算机以其33.86petaflop/s的性能被国际Top500评为世界性能第一的超级计算机。“天河2号”拥有32000块CPU卡和48000块MIC卡,计算资源丰富,是国内最新的超算平台,在国内超算领域受到广泛认可。1、经过实际验证,GROMACS在“天河2号”超级计算机上运行时,只能使用CPU而无法使用MIC,没有充分使用“天河2号”超级计算机的计算资源。针对这个问题,本文分析了GROMACS软件在实现offload模式中的问题和困难,然后在此基础上,不断通过数据整合,多计算单元并行,使用新数据流等方式进行加速优化,并最终完成了单MIC卡上对GROMACS软件的offload模式的优化。该方法可以让GROMACS软件运行时,利用“天河2号”的MIC协处理器对软件进行并行加速。最终测试发现,offload模式的GROMACS软件取得了一定的加速效果。2、针对offload模式优化的GROMACS软件效率过低的情况,本文经过深入研究和分析,发现引入额外时间开销过大是制约软件效率的主要原因。通过使用新的数据流优化,多计算单元加速的方法,本文进一步减了offload模式的GROMACS软件的额外开销,提高了软件的并行度,在单节点上让CPU和MIC协同计算GROMACS的核心计算模块,令软件的性能有了质的飞跃,实现了使用offload模式对GROMACS软件的并行加速。3、在实际使用时,为了满足计算需要,GROMACS经常被跨节点使用。所以从实用性和可拓展性考虑,本文对跨节点的GROMACS软件进行了offload模式的并行加速。在实现过程中,本文将跨节点GROMACS软件的局部势能力和非局部势能力部分分别offload到MIC卡进行计算,并针对数据的不同特征将数据分为四种通信模式,减少通信开销,最终实现跨节点GROMACS软件的offload模式并行加速。总之,本文针对“天河2号”异构平台,在全世界范围内第一个实现了MIC卡上基于offload模式的GROMACS软件的并行优化,并取得了很好的加速效果。
其他文献
字符识别是模式识别领域的重要研究方向。目前,其主要的研究方法大都是基于统计学的,研究者需要搜集大量的标记样本进行训练,然后生成分类器进行分类,这样耗费大量的时间与人
随着经济的快速发展,公路车辆数目不断增多,道路交通安全成为社会关注的普遍问题。在这种情况下,我国陆续投入各种智能交通系统的研究,而交通标志作为向行人指示交通的交通设施对
语义Web的目标是使得Web上的信息具有计算机可以理解的语义,随着语义Web中本体数量的不断增加,本体的重用和共享逐渐成为亟待解决的重要问题。在不同本体间进行映射是解决本
在以数字化信息为资源、互联网交互为动脉的21世纪,快速、有效地获取有用信息变得越来越困难,其根本原因在于现有数据缺乏语义信息。针对这种情况,在语义和知识层面上描述领
跨入新时代,计算机融入到人们生活的方方面面,随之也产生了数量巨大的数据需要处理。云计算、物联网、物理学、生物学、环境生态学等领域更需要对海量数据进行挖掘和处理,这
随着信息技术的不断发展和应用,数据收集手段越来越丰富,海量存储也越来越普遍。由此,一种新的操作算子Skyline查询被引入了数据库领域,目的是要查找数据集中不被其它点支配
无线传感器网络路由协议已经成为目前一项研究热点。与传统网络路由协议的区别在于由于节点的简单和能量的有限,在设计路由协议时要把节点的能量消耗、计算能力和存储资源等
随着视频监控技术的发展,基于运动目标检测跟踪的视频监控技术已被广泛地应用于民用、军事、工业生产等领域。应用环境的日益复杂和多样化,对监控系统的性能提出了更高的要求。
本文以业界当前流行的SOA企业架构思想为基础,对异构分布式应用系统之间的通信进行了广泛的研究。在对XML、SOAP、WSDL、WebService等技术分析和研究的基础上,构建了一个轻量
结对编程(Pair Programming)是极限编程(Extreme Programming,简称XP)的十二个实践之一。结对编程是一个非常直观的概念,简单的说是指两位程序员肩并肩地坐在同一台电脑前合