摘要 | 第5-6页 |
Abstract | 第6-7页 |
第1章 绪论 | 第12-18页 |
1.1 课题研究背景及目的 | 第12-14页 |
1.1.1 粒子输运理论的发展 | 第12-13页 |
1.1.2 CPU-GPU异构平台以及协同并行计算的发展 | 第13-14页 |
1.1.3 研究的目的及意义 | 第14页 |
1.2 国内外研究现状 | 第14-16页 |
1.3 本文的主要工作 | 第16-17页 |
1.4 本文的组织 | 第17-18页 |
第2章 CPU-GPU异构体系结构与并行编程模型 | 第18-28页 |
2.1 CPU-GPU异构体系结构 | 第18-21页 |
2.1.1 CPU与GPU的比较 | 第18-19页 |
2.1.2 CPU-GPU异构体系结构 | 第19-20页 |
2.1.3 “天河-1A”系统介绍 | 第20-21页 |
2.2 并行编程模型 | 第21-27页 |
2.2.1 MPI并行编程模型 | 第21-22页 |
2.2.2 OpenMP并行编程模型 | 第22-23页 |
2.2.3 CUDA并行编程模型 | 第23-27页 |
2.3 本章小结 | 第27-28页 |
第3章 基于GPU的Sweep3D并行实现 | 第28-40页 |
3.1 粒子输运的相关背景知识 | 第28-30页 |
3.1.1 粒子输运的基本概念 | 第28-29页 |
3.1.2 三维笛卡尔坐标下的粒子输运方程 | 第29页 |
3.1.3 离散纵坐标法 | 第29-30页 |
3.2 Sweep3D概述 | 第30-32页 |
3.3 Sweep3D的GPU并行实现 | 第32-33页 |
3.4 Sweep3D的GPU并行优化 | 第33-37页 |
3.4.1 全局存储器访问优化 | 第33-35页 |
3.4.2 消除数据依赖 | 第35-36页 |
3.4.3 线程块大小优化 | 第36-37页 |
3.5 实验 | 第37-39页 |
3.5.1 线程块大小对Sweep3D-GPU性能的影响 | 第37-38页 |
3.5.2 Sweep3D-GPU优化前后性能比较 | 第38-39页 |
3.6 本章小结 | 第39-40页 |
第4章 基于CPU-GPU的Sweep3D协同并行实现 | 第40-58页 |
4.1 CPU-GPU协同并行算法研究 | 第40-42页 |
4.1.1 CPU-GPU协同并行算法分类 | 第40-41页 |
4.1.2 MPI-OpenMP-CUDA并行编程模型 | 第41-42页 |
4.2 Sweep3D协同并行实现过程分析 | 第42-45页 |
4.2.1 协同并行实现总体流程 | 第42-43页 |
4.2.2 波阵面扫描过程的协同并行实现 | 第43-45页 |
4.3 负载均衡 | 第45-50页 |
4.3.1 静态任务划分模型 | 第46-48页 |
4.3.2 动态任务划分模型 | 第48-50页 |
4.4 数据传输优化 | 第50-53页 |
4.4.1 页锁定内存与CUDA流 | 第50-51页 |
4.4.2 通信与计算重叠 | 第51-53页 |
4.5 实验 | 第53-57页 |
4.5.1 任务划分模型测试 | 第53-55页 |
4.5.2 数据传输优化测试 | 第55-56页 |
4.5.3 协同并行算法性能测试 | 第56-57页 |
4.6 本章小结 | 第57-58页 |
结论 | 第58-61页 |
参考文献 | 第61-65页 |
致谢 | 第65-66页 |
附录A (攻读硕士学位期间所发表的学术论文目录) | 第66-67页 |
附录B (攻读硕士学位期间所参与的学术科研活动) | 第67页 |