摘要 | 第8-9页 |
Abstract | 第9-10页 |
第1章 绪论 | 第13-18页 |
1.1 课题研究背景及意义 | 第13-14页 |
1.2 国内外研究现状 | 第14-16页 |
1.2.1 相场和流场研究现状 | 第14-15页 |
1.2.2 并行化计算在微观凝固组织中的研究现状 | 第15-16页 |
1.3 本文主要研究内容 | 第16-17页 |
1.4 本文结构安排 | 第17-18页 |
第2章 MPI与CUDA并行计算简述 | 第18-29页 |
2.1 并行计算概述 | 第18-19页 |
2.1.1 为什么要使用并行计算 | 第18页 |
2.1.2 并行的两种方式 | 第18-19页 |
2.2 物理问题在并行机上的求解 | 第19-20页 |
2.3 MPI并行编程技术 | 第20-24页 |
2.3.1 MPI简介 | 第20-22页 |
2.3.2 MPI通信模式 | 第22页 |
2.3.3 MPI两种基本程序设计模式 | 第22-24页 |
2.4 CUDA并行编程技术 | 第24-28页 |
2.4.1 GPU简介 | 第24页 |
2.4.2 CUDA内核函数 | 第24-25页 |
2.4.3 CUDA线程 | 第25-26页 |
2.4.4 CUDA存储 | 第26-27页 |
2.4.5 CUDA异构编程 | 第27-28页 |
2.5 本章小节 | 第28-29页 |
第3章 建立PF-LBM模型 | 第29-36页 |
3.1 建立相场模型 | 第29-32页 |
3.1.1 基本原理 | 第29-30页 |
3.1.2 构造数学模型 | 第30-32页 |
3.2 建立LBM流场模型 | 第32-34页 |
3.2.1 基本原理 | 第32页 |
3.2.2 构造数学模型 | 第32-34页 |
3.2.3 D3Q19流场模型 | 第34页 |
3.3 在相场模型中耦合LBM流场模型 | 第34-35页 |
3.4 本章小结 | 第35-36页 |
第4章 数值模拟异构并行化实现及优化 | 第36-53页 |
4.1 数值模拟参数与步长 | 第36-37页 |
4.2 初始条件设置 | 第37页 |
4.3 PF-LBM模型在MPI中的并行编程设计 | 第37-40页 |
4.3.1 设计模式选择 | 第37页 |
4.3.2 模型并行化分割 | 第37-39页 |
4.3.3 节点边界交换 | 第39页 |
4.3.4 MPI并行设计实现 | 第39-40页 |
4.4 CUDA三维数组编程优化 | 第40-43页 |
4.4.1 普通编程语言数组使用 | 第40-41页 |
4.4.2 CUDA中的数组使用 | 第41页 |
4.4.3 在CUDA中使用伪三维数组 | 第41-43页 |
4.5 CUDA随机数优化 | 第43-45页 |
4.5.1 减少迭代次数 | 第44页 |
4.5.2 通过CPU产生传给GPU | 第44-45页 |
4.5.3 不同随机数产生方法的效率及分析 | 第45页 |
4.6 PF-LBM模型在MPI+CUDA中的异构实现 | 第45-50页 |
4.6.1 MPI+CUDA异构编译优化 | 第46页 |
4.6.2 异构方案 | 第46-49页 |
4.6.3 异构方案选择 | 第49-50页 |
4.7 PF-LBM模型在MPI+CUDA上的设计实现 | 第50-51页 |
4.8 MPI与CUDA编程注意事项 | 第51-52页 |
4.9 本章小结 | 第52-53页 |
第5章 模型结果及并行化分析 | 第53-60页 |
5.1 模拟实验环境 | 第53页 |
5.2 不同模拟结果对比 | 第53-56页 |
5.2.1 合金相场模拟结果与实验结果对比 | 第53-54页 |
5.2.2 相场中加入流场的枝晶生长状态与流线 | 第54页 |
5.2.3 串行模拟结果与并行模拟结果对比 | 第54-56页 |
5.3 模拟效率及分析 | 第56-58页 |
5.3.1 不同方法模拟时间分析 | 第56-57页 |
5.3.2 相同节点MPI与MPI+CUDA时间分析 | 第57-58页 |
5.3.3 并行模拟加速比 | 第58页 |
5.4 模拟规模及分析 | 第58-59页 |
5.5 本章小结 | 第59-60页 |
总结与展望 | 第60-62页 |
参考文献 | 第62-66页 |
致谢 | 第66-67页 |
附录A 攻读硕士期间所发表的论文 | 第67-68页 |
附录B 攻读硕士学位期间所参与的科研项目 | 第68页 |