摘要 | 第4-6页 |
Abstract | 第6-7页 |
第1章 绪论 | 第11-17页 |
1.1 研究背景 | 第11-12页 |
1.2 并行编译的发展及现状研究 | 第12-14页 |
1.2.1 并行编译的发展 | 第12-13页 |
1.2.2 并行编译国内外研究现状 | 第13-14页 |
1.3 论文主要工作 | 第14-16页 |
1.4 本章小结 | 第16-17页 |
第2章 Clang 基础上的代码转换工具设计 | 第17-33页 |
2.1 代码转换工具功能分析 | 第17-24页 |
2.1.1 Intel 编译器的自动并行化 | 第17-18页 |
2.1.2 PGI 高性能并行编译器 | 第18页 |
2.1.3 Clang/LLVM 编译器 | 第18-20页 |
2.1.4 LLVM 前端 Clang 编译模块分析 | 第20页 |
2.1.5 词法分析 | 第20-21页 |
2.1.6 语法分析 | 第21页 |
2.1.7 语义分析 | 第21页 |
2.1.8 中间代码生成 | 第21-24页 |
2.2 串并源源转换方法的设计 | 第24-32页 |
2.2.1 控制流图 | 第25-26页 |
2.2.2 抽象语法树 | 第26-29页 |
2.2.3 指针指向分析 | 第29页 |
2.2.4 循环依赖关系 | 第29-30页 |
2.2.5 循环依赖的种类 | 第30-31页 |
2.2.6 循环依赖分析 | 第31-32页 |
2.3 本章小结 | 第32-33页 |
第3章 基于 Clang 的代码自动转换编译功能的概要设计 | 第33-38页 |
3.1 CTMP 代码转换功能设计思路 | 第33-34页 |
3.2 基于 Clang 的 CTMP 相关模块 | 第34-37页 |
3.2.1 驱动参数 | 第34-36页 |
3.2.2 LLVM 的静态分析模块 | 第36-37页 |
3.3 本章小结 | 第37-38页 |
第4章 CTMP 扩展功能设计与实现 | 第38-53页 |
4.1 过程间分析设计 | 第38-41页 |
4.2 循环拆分模块设计策略 | 第41-46页 |
4.2.1 循环检测 | 第41-43页 |
4.2.2 嵌套循环的拆解 | 第43-45页 |
4.2.3 循环的拆解重组 | 第45-46页 |
4.3 变量替换在 CTMP 中的应用策略 | 第46-48页 |
4.4 代码生成功能的实现 | 第48-51页 |
4.4.1 代码生成的相关表示 | 第48-50页 |
4.4.2 代码生成主要方法 | 第50-51页 |
4.5 本章小结 | 第51-53页 |
第5章 实验及测试结果 | 第53-55页 |
第6章 总结与展望 | 第55-57页 |
参考文献 | 第57-59页 |
作者简介及在学期间所取得的科研成果 | 第59-60页 |
致谢 | 第60页 |