基于GPU并行计算的性能优化研究
摘要 | 第4-5页 |
Abstract | 第5页 |
第1章 绪论 | 第8-12页 |
1.1 论文研究背景和意义 | 第8-10页 |
1.2 国内外研究现状 | 第10页 |
1.3 论文主要内容及结构安排 | 第10-12页 |
第2章 CUDA 概述 | 第12-21页 |
2.1 引言 | 第12页 |
2.2 CUDA 并行计算框架 | 第12-18页 |
2.2.1 CUDA 基本组成 | 第12页 |
2.2.2 CPU 与 GPU 的协作 | 第12-13页 |
2.2.3 GPU 的线程层次结构 | 第13-15页 |
2.2.4 存储器的结构分层 | 第15-17页 |
2.2.5 CUDA 软件堆栈的结构分层 | 第17-18页 |
2.3 CUDA 技术的编程模型 | 第18-20页 |
2.3.1 CUDA 基本编程知识 | 第18页 |
2.3.2 Block 内部通信原理 | 第18-19页 |
2.3.3 计算及执行单元 | 第19-20页 |
2.4 本章小结 | 第20-21页 |
第3章 CUDA 性能优化研究 | 第21-32页 |
3.1 引言 | 第21页 |
3.2 线程块优化 | 第21-25页 |
3.2.1 减少 warp 块内线程分支 | 第21-23页 |
3.2.2 增大并行规模 | 第23-24页 |
3.2.3 使用分组技术 | 第24-25页 |
3.3 与存储器相关的优化 | 第25-28页 |
3.3.1 使用分块技术 | 第25-26页 |
3.3.2 使用数据预取 | 第26页 |
3.3.3 存储器合并 | 第26-27页 |
3.3.4 避免 bank 冲突 | 第27-28页 |
3.4 降低指令开销 | 第28-29页 |
3.4.1 循环展开 | 第28页 |
3.4.2 优化算术指令 | 第28-29页 |
3.5 资源分配优化 | 第29-30页 |
3.5.1 线程配置 | 第29-30页 |
3.5.2 资源占用率 | 第30页 |
3.6 本章小结 | 第30-32页 |
第4章 CUDA 性能优化实现及分析 | 第32-55页 |
4.1 资源分配优化实现 | 第32-36页 |
4.2 存储器访问优化实现 | 第36-40页 |
4.2.1 全局存储器的优化 | 第37-40页 |
4.2.2 共享存储器的优化 | 第40页 |
4.3 CUDA 优化应用及实现分析 | 第40-45页 |
4.4 基于 CUDA 的流体仿真 | 第45-51页 |
4.4.1 核心问题描述 | 第46-47页 |
4.4.2 仿真处理流程 | 第47-48页 |
4.4.3 数据存储设计 | 第48页 |
4.4.4 仿真的关键问题实现 | 第48-49页 |
4.4.5 实验结果及分析 | 第49-51页 |
4.5 CUDA 烟雾粒子仿真 | 第51-54页 |
4.6 本章小结 | 第54-55页 |
第5章 结束语 | 第55-56页 |
参考文献 | 第56-58页 |
作者简介及在学期间所取得的科研成果 | 第58-59页 |
致谢 | 第59页 |