学位论文 > 优秀研究生学位论文题录展示
GPU加速高速粒子碰撞模拟
作 者: 吴强
导 师: 杨灿群
学 校: 国防科学技术大学
专 业: 计算机科学与技术
关键词: 分子动力学模拟 GPU计算 CUDA编程模型 Brook+语言 区域分解算法 粒子索引方法
分类号: TP332
类 型: 硕士论文
年 份: 2009年
下 载: 74次
引 用: 2次
阅 读: 论文下载
内容摘要
分子动力学(Molecular dynamics,简称MD)模拟作为一种重要的计算机模拟方法广泛应用于生物,化学,材料科学等众多学科中。然而计算性能一直都是限制MD使用的主要障碍。近年来,GPU作为一种新型的计算资源成为研究的热点。与传统CPU相比,GPU拥有更高的性能,更低的功耗和更高的性价比。因此,使用GPU加速分子动力学模拟,可以节约模拟的时间,提高模拟的规模,从而使分子动力学模拟能更广泛的应用到实际的工程中去。本文主要以高速碰撞的粒子模型为研究对象,基于NVIDIA CUDA编程模型和Brook+语言实现了GPU加速的分子动力学程序,并针对GPU的存储结构和多GPU对算法进行了优化,主要取得了如下成果:1、提出了一种优化的区域分解算法。本文改进了传统的区域分解算法,在通用处理器和GPU上分两次对分子动力学模拟中的计算任务进行分解,首次划分保证负载平衡,第二次划分解决通信开销和数据复用问题。2、提出了一种改进的粒子索引方法。通过在通用处理节点上对粒子进行排序,使相邻粒子的存储地址尽量靠近。当加速节点上的线程从全局内存上读取粒子信息时,能够呈现出数据局部性的特点,可以减少了线程从全局内存中读取数据的次数,从而节省时间。3、针对GPU的存储结构对程序进行优化。针对片上共享内存分体设计特点,实现了单精度算法下线程间无冲突的共享内存访问,减少了流处理器的闲置时间。4、使用多GPU对程序进行加速。采用常用的消息传递接口(MPI)协议实现通用处理器之间的并行划分,从而实现了各节点间GPU的并行计算,满足了更快速的分子动力学模拟的要求。本文对GPU加速的分子动力学模拟正确性和性能进行了测试。结果表明,GPU对MD算法的加速有明显效果。当粒子规模为43.2万时,经AMD HD4870加速后的MD程序的性能提高了4.8倍,而经Tesla C1060加速后,MD程序性能提高6.5倍。在使用多GPU对程序进行加速后,MD程序的性能提高了11.2倍。同时,经GPU加速的MD程序保证了结果的正确性。
|
全文目录
摘要 9-10 ABSTRACT 10-12 第一章 绪论 12-19 1.1 课题背景 12-13 1.2 研究现状 13-17 1.2.1 GPU 通用计算研究现状 13-15 1.2.2 GPU 加速分子动力学模拟研究现状 15-17 1.3 本文研究内容和创新 17 1.4 论文结构 17-19 第二章 背景知识 19-35 2.1 GPU 系统结构特点和编程模型 19-30 2.1.1 GPU 系统结构特点 19-25 2.1.2 GPU 通用编程模型 25-30 2.2 分子动力学算法 30-35 2.2.1 分子动力学模拟基本过程 30 2.2.2 作用力的计算 30-31 2.2.3 运动方程求解 31-32 2.2.4 周期性边界条件 32-35 第三章 使用GPU 加速MD 算法的实现技术 35-50 3.1 系统级设计 35-39 3.1.1 系统级任务分析 35-36 3.1.2 系统级任务分割 36-39 3.2 加速节点上的算法设计 39-50 3.2.1 分解方法 40-46 3.2.2 使用NVIDIA CUDA 模型的实现 46-48 3.2.3 使用Brook+语言的实现 48-50 第四章 使用GPU 加速MD 算法性能优化技术 50-58 4.1 针对GPU 存储结构优化技术 50-55 4.1.1 粒子索引方法 50-53 4.1.2 在CUDA 程序中使用共享存储器 53 4.1.3 针对AMD GPU 存储结构的优化方法 53-55 4.2 多GPU 加速的MD-MPI 算法 55-58 4.2.1 CPU 和GPU 连接方式 55 4.2.2 基于多GPU 加速的MD-MPI 算法 55-58 第五章 测试与分析 58-62 5.1 测试环境 58 5.2 正确性验证 58-60 5.2.1 测试用例 58 5.2.2 测试结果与分析 58-60 5.3 性能测试 60-62 第六章 结束语 62-63 6.1 工作总结 62 6.2 展望 62-63 致谢 63-64 参考文献 64-67 作者在读期间取得的学术成果 67
|
相似论文
- 基于GPU的图书推荐系统研究与实现,TP391.3
- AST3实时数据处理系统关键技术的研究,TP274
- 激光切割路径优化算法研究,TN249
- GPU加速全局光照与红外多点触摸系统研究,TP391.41
- 某些二维与三维问题的区域分解算法,O241.82
- 基于GPU的电磁散射问题积分方程方法并行数值求解,O441.4
- 抛物型偏微分方程最优控制问题区域分解算法及其先验误差估计,O241.82
- Stokes外问题的区域分解法,O241.82
- 无界区域上的区域分解算法,O241.82
- 基于GPU的光线跟踪算法研究与实现,TP391.41
- 抛物型方程的一种高阶并行差分格式,O241.82
- 基于GPU的实时大理石纹理仿真,TP391.9
- 二维抛物型对流—扩散问题的区域分解算法,O241.82
- 地下水渗流的直接边界元非重叠性区域分解算法,O357.3
- 求解微分方程的区域分解两重网格算法,O241.8
- 无穷凹角区域椭圆边值问题的区域分解算法,O241
- 具有长条形内边界的二维调和外问题的基于自然边界归化的数值方法,O241
- 动态弹塑性扭转问题的区域分解法,O175
- 运动导体涡流电磁问题的径向基点配置型无单元算法研究,TM15
- 某些正反散射问题的快速算法研究,O411
中图分类: > 工业技术 > 自动化技术、计算机技术 > 计算技术、计算机技术 > 电子数字计算机(不连续作用电子计算机) > 运算器和控制器(CPU)
© 2012 www.xueweilunwen.com
|