欢迎来到天天文库
浏览记录
ID:20604036
大小:96.66 KB
页数:19页
时间:2018-10-14
《基于openmp的分子动力学并行算法的性能分析与优化》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、基于OpenMP的分子动力学并行算法的性能分析与优化文章编号:1001-9081(2012)01-0163-04doi:10.3724/SP.J.1087.2012.00163摘要:为提高分子动力学模拟在共享内存式服务器上的计算速度,对基于OpenMP的分子动力学并行算法(Critical方法)进行了性能分析与优化。通过在多核服务器上的测试,以及加速比和并行效率的计算分析了Critical方法的并行性能,进而提出优化的三角形方法。所提方法中每个线程所计算的粒子数固定,且粒子数目呈阶梯状上升,使得各线程能够错时到达临界区。从而使程序在
2、临界区的闲置时间比Critical方法减半,加速比明显提高。?关键词:分子动力学;并行计算;多核中央处理器;OpenMP;临界区?中图分类号:TP399;0641文献标志码:AAbstract:Toenhancethecomputingspeedofthemoleculardynamicssimulationsonthesharedmemoryservers,theperformanceofparallelmoleculardynamicsprogrambasedonOpenMulti-Processing(OpenMP)appro
3、achwiththecriticalsectionmethodwasanalyzedandimproved.Aftertestingperformanceonamulti-coreserver,aswellasthecalculationsofspeedupandparallelefficiency,anoptimizedtrianglemethodwasdeveloped.Inthismethod,stationaryatomsetswereassignedtothreadsrespectively,andthenumberofa
4、tomsincreasedstepwise,whichmadethethreadsarriveatcriticalsectionsatdifferenttime.Thetrianglemethodcanefficientlyhalvetheidletimeincriticalsectionsandthereforecansignificantlyenhancetheparallelperformance.Keywords:moleculardynamics;parallelcomputing;multi-coreCentralPro
5、cessingUnit(CPU);OpenMulti-Processing(OpenMP);criticalsection0引言?分子动力学(MolecularDynamics,MD)是一种应用广泛并可在粒子级别模拟固态、液态物质的主要计算方法之一。它将粒子视为经典粒子,通过求解各粒子的运动方程得到不同时刻粒子的空间位置信息,进而根据统计物理方法计算出物质微观结构、热力学性质及平衡输运性质等在实验条件下较难得到的宏观属性。MD模拟己被广泛应用于物理科学、材料科学、生命科学等领域[1]2-3、[2]7-8?,成为一种重要的科学研宄方法
6、。MD模拟对计算资源有着巨大的需求,是高性能计算的典型应用之一。在空间尺度上,为了获得更精确的宏观性质,MD模拟体系的粒子个数可能多达几百万甚至更多;在时间尺度上,MD模拟的步长时间通常取几个飞秒(fs)[2]60?,数百万步的计算也仅模拟了现实过程中约几纳秒的时间。为了能快速完成MD计算任务,人们通常让多台计算机同时完成一个计算任务,这需要首先对串行MD程序进行并行化。常用的MD软件如LAMMPS[3]、NAMD[4]、CHARMM[5]、AMBER[6]等都有并行版本,而且都是基于消息传递模型如MPI(MessagePassin
7、gInterface)[7]。?随着计算机硬件的快速发展,节点采用对称多处理(SymmetricMulti-Processing,SMP)机的集群系统逐渐成为高性能计算机的主流体系结构。2011年6月的TOP500名单中有80%以上的高性能计算机采用了这种结构[8]。这种集群存在两级速度差异较大的通信路径:一是节点内部的共享存储通信,它可通过对共享内存上的数据读写来实现数据通信,速度较快;另一种是在介于节点间的网络上进行的消息传递通信,速度较慢。运行于SMP集群上的消息通信模型通常忽略了这一区别,将SMP主机节点内的多路CPU也视为
8、不同的节点进行消息通信。这样的并行编程模型没有完全利用SMP集群的特点,在性能上还有一定的改进空间[9]。?—种MPI+OpenMP的混合模型于近年来被采用以改进基于纯消息通信机制的并行编程模型[10]。MPI+OpenMP混合模型在
此文档下载收益归作者所有