C到CUDA编译架构研究与实现
| 摘要 | 第1-10页 |
| Abstract | 第10-12页 |
| 第一章 绪论 | 第12-22页 |
| ·研究背景与意义 | 第12-16页 |
| ·多核/众核体系结构的发展 | 第12-13页 |
| ·GPU 及编程模型的发展 | 第13-16页 |
| ·CUDA 的研究现状 | 第16-18页 |
| ·本文的主要工作 | 第18-20页 |
| ·循环结构并行化代码调度方法 | 第18-19页 |
| ·面向CUDA 存储模型的访存优化方法 | 第19-20页 |
| ·C 到CUDA 并行化编译架构 | 第20页 |
| ·本文的组织结构 | 第20-22页 |
| 第二章 面向CUDA 的SUIF2 中间表示扩展 | 第22-38页 |
| ·CUDA 的基本架构 | 第22-26页 |
| ·CUDA 线程层次 | 第22-24页 |
| ·CUDA 存储层次 | 第24-26页 |
| ·CUDA 执行模型 | 第26页 |
| ·SUIF2 | 第26-35页 |
| ·SUIF2 的基本架构 | 第27-29页 |
| ·SUIF2 的关键特征 | 第29页 |
| ·SUIF2 修改方法 | 第29-33页 |
| ·SUIF2 的中间表示 | 第33-35页 |
| ·SUIF2 的CUDA 中间表示 | 第35-36页 |
| ·小结 | 第36-38页 |
| 第三章 ICuda 编译框架 | 第38-44页 |
| ·相关研究工作 | 第38-40页 |
| ·ICuda 框架 | 第40-43页 |
| ·ICuda 核心架构 | 第40-42页 |
| ·设计原则 | 第42-43页 |
| ·小结 | 第43-44页 |
| 第四章 代码变换和优化 | 第44-57页 |
| ·数据下标变换方法 | 第44-48页 |
| ·循环结构到多线程的映射 | 第44-46页 |
| ·数据下标变换方法 | 第46-48页 |
| ·共享变量分布式访问 | 第48-52页 |
| ·循环结构数据依赖分析 | 第49-51页 |
| ·共享变量优化 | 第51-52页 |
| ·CUDA 的访存优化 | 第52-56页 |
| ·经典访存优化方法 | 第53页 |
| ·基于纹理空间的访存策略 | 第53-55页 |
| ·基于数据分类技术的存储布局优化 | 第55-56页 |
| ·小结 | 第56-57页 |
| 第五章 性能测试与分析 | 第57-65页 |
| ·实验平台与测试程序 | 第57-58页 |
| ·实验平台 | 第57页 |
| ·测试程序集 | 第57-58页 |
| ·实验结果及分析 | 第58-63页 |
| ·循环结构并行化代码调度方法的效果 | 第58-59页 |
| ·CUDA 访存优化的效果 | 第59-61页 |
| ·ICuda 的测试 | 第61-63页 |
| ·小结 | 第63-65页 |
| 第六章 结论与展望 | 第65-67页 |
| ·全文总结 | 第65-66页 |
| ·研究展望 | 第66-67页 |
| 致谢 | 第67-69页 |
| 参考文献 | 第69-73页 |
| 作者在学期间取得的学术成果 | 第73页 |