摘要 | 第9-11页 |
ABSTRACT | 第11-12页 |
第一章 绪论 | 第13-26页 |
1.1 研究背景与意义 | 第13-18页 |
1.1.1 GPU的结构与发展 | 第13-18页 |
1.2 CUDA编程模型 | 第18-24页 |
1.2.1 编程桥梁问题 | 第18-19页 |
1.2.2 CUDA编程架构 | 第19-20页 |
1.2.3 CUDA执行模型 | 第20页 |
1.2.4 控制流问题的产生与影响 | 第20-24页 |
1.3 本文目标与主要工作 | 第24-25页 |
1.3.1 课题目标 | 第24页 |
1.3.2 课题主要工作 | 第24-25页 |
1.3.3 课题来源 | 第25页 |
1.4 本文结构安排 | 第25-26页 |
第二章 CUDA及控制流优化研究现状 | 第26-34页 |
2.1 CUDA的研究现状 | 第26-27页 |
2.2 控制流的优化研究现状 | 第27-33页 |
2.2.1 硬件优化方法 | 第27-30页 |
2.2.2 软件优化方法 | 第30-33页 |
2.3 本章小结 | 第33-34页 |
第三章 线程交换优化 | 第34-51页 |
3.1 线程交换的基本思想 | 第34-37页 |
3.1.1 CUDA Kernel的抽象表示 | 第34-36页 |
3.1.2 线程交换的概念 | 第36-37页 |
3.2 线程交换方法 | 第37-39页 |
3.2.1 Control Divergence分类 | 第37页 |
3.2.2 交换映射表 | 第37-39页 |
3.3 映射表的直接构造 | 第39-45页 |
3.3.1 DIMA基本框架 | 第39-42页 |
3.3.2 DIMA正确性证明 | 第42-45页 |
3.4 映射表的预处理构造 | 第45-47页 |
3.4.1 PIMA基本框架 | 第45-46页 |
3.4.2 交换数据方法 | 第46-47页 |
3.5 设计参数优化探究 | 第47-49页 |
3.5.1 预处理构造映射表法的参数选择 | 第47-49页 |
3.5.2 非TDD的参数选择 | 第49页 |
3.6 本章小结 | 第49-51页 |
第四章 延迟隐藏优化 | 第51-57页 |
4.1 延迟隐藏技术概述 | 第51-53页 |
4.2 数据交换的延迟隐藏 | 第53-56页 |
4.2.1 延迟隐藏流水线的设计 | 第54-56页 |
4.3 本章小结 | 第56-57页 |
第五章 性能评价 | 第57-84页 |
5.1 实验环境 | 第57-60页 |
5.2 算法性能测试 | 第60-79页 |
5.2.1 使用DIMA算法进行优化的程序 | 第60-70页 |
5.2.2 使用PIMA算法进行优化的程序 | 第70-79页 |
5.3 延迟隐藏性能评价 | 第79-83页 |
5.3.1 Bitonic sort的优化 | 第79-80页 |
5.3.2 Reduction的优化 | 第80-81页 |
5.3.3 Needle-Wunch的优化 | 第81-82页 |
5.3.4 Marching cubes的优化 | 第82-83页 |
5.3.5 Hotspots的优化 | 第83页 |
5.4 本章小结 | 第83-84页 |
第六章 结束语 | 第84-86页 |
6.1 全文总结 | 第84-85页 |
6.2 研究展望 | 第85-86页 |
致谢 | 第86-88页 |
参考文献 | 第88-92页 |
作者在学期间取得的学术成果 | 第92页 |