题名创建基于GPU的分子动力学程序
作者刘文志
学位类别硕士
答辩日期2011-05-25
授予单位中国科学院研究生院
导师李晓霞
关键词GMD 分子动力学 GPU CUDA GROMACS
其他题名Implementation of a GPU based Molecular Dynamics Program
学位专业应用化学
中文摘要分子动力学(Molecular Dynamics,MD)通过模拟粒子的微观运动来获得体系的性质,是研究微观机理的一种有效手段,广泛应用于生物、材料等领域。由于分子动力学要模拟大量粒子长时间的运动,因此需要非常强大的计算能力。GPU (Graphics Processing Unit,图形处理单元)的峰值计算能力相比CPU (Central Processing Unit,中央处理单元)有很高的性能优势,因此GPU为加速分子动力学程序提供了一个可能的选择。  由于GPU硬件的结构和CPU有很大的不同,为了发挥其计算能力必须使用并行的编程模式,并行程序的正确性如何保证以及如何调试还没有一个成熟的方法或模式可以借鉴,因此使用GPU编程的难度远远大于CPU编程。  本文尝试基于NVIDIA CUDA (Compute Unified Device Architecture)架构,以成熟、主流的分子动力学模拟软件GROMACS (GROningen MAchine for Chemical Simulation)为参考,实现了一个基于GPU的分子动力学计算的程序GMD,并将GMD和GROMACS进行了性能比较。主要工作包括: 1. 通过gprof (GNU Profiler)软件查找出了GROMACS的热点部分代码,并且通过查看源码的方式分析了GROMACS的主要计算流程。在此基础上,为MD计算流程的各个环节选择了一种算法,包括邻居搜索、范德华力计算、成键力计算、温度耦合、粒子更新、动量移除等,并在GPU上加以实现,通过合理使用线程、GPU存储器、解决数据读写冲突等,大多数环节获得了20~30倍的加速。 2. 通过将GMD代码封装后取代GROMACS相应计算流程,将GMD代码嵌入了GROMACS中。利用算例将GMD与GROMACS做了比较。在微观的轨迹信息和宏观的能量信息上面,GMD计算结果与GROMACS的计算结果一致。 3. 对聚乙烯(PE)结晶过程的模拟结果表明,GMD和GROMACS 4.5.3 GPU版本性能相近;相对于GROMACS 4.05单核,GMD加速了8倍左右。最后完成了两个PE结晶过程的模拟(粒子规模分别是4.5万和36万),结果和GROMACS基本一致。
英文摘要Molecular dynamics (MD) acquires systems' macroscopically properties by means of simulating microscopic movement of many particles, which is an effective method to investigate micro phenomena and is wildly used in simulation of biomolecules and materials as well. MD is a process of computing many particle interactions and movements at very long time scale that costs tremendous computing power. GPU has approximately hundreds of horse power as CPU, so it provides new opportunity to use GPU in accelerating molecular dynamics program.   GPU and CPU hardware are different in essence, we must make use of parallel programming to harvest GPU computing power. that makes developing GPU program is much more challenging than CPU program.   This thesis implements a molecular dynamics program GMD based on NVIDIA CUDA architecture. Major contents of the thesis are summarized as the following. 1. Hot spots and computing flow of GROMACS are analyzed using gprof (GNU Profiler) software. The MD computing flow including neighbor searching, van der Waals force calculating, bond force computing, temperature coupling and movement corrections are implemented on GPU with speedups of 20 to 30 folds for most of them. 2. We wrap GMD code to replace the computing flow in GROMACS. The numerical precision of GMD are verified by comparing trajectory and energy data with what GROMACS 4.05 generates and the results show good agreement. The benchmark of GMD for the simulation of polyethylene crystallization obtains a speedup of 8 folds against GROMACS 4.05.
语种中文
公开日期2013-09-24
页码81
内容类型学位论文
源URL[http://ir.ipe.ac.cn/handle/122111/1720]  
专题过程工程研究所_研究所(批量导入)
推荐引用方式
GB/T 7714
刘文志. 创建基于GPU的分子动力学程序[D]. 中国科学院研究生院. 2011.
个性服务
查看访问统计
相关权益政策
暂无数据
收藏/分享
所有评论 (0)
暂无评论
 

除非特别说明,本系统中所有内容都受版权保护,并保留所有权利。


©版权所有 ©2017 CSpace - Powered by CSpace