OpenMP程序分析及优化技术研究
| 表目录 | 第1-9页 |
| 图目录 | 第9-10页 |
| 摘要 | 第10-12页 |
| ABSTRACT | 第12-14页 |
| 第一章 绪论 | 第14-22页 |
| ·多核体系结构 | 第14-15页 |
| ·并行程序设计方法 | 第15-16页 |
| ·自动并行化工具 | 第15页 |
| ·显式并行编程 | 第15-16页 |
| ·OpenMP编程模型 | 第16-18页 |
| ·论文的研究内容 | 第18-21页 |
| ·OpenMP 程序的可能并行执行关系分析 | 第18-19页 |
| ·循环级OpenMP 程序优化技术研究 | 第19-21页 |
| ·论文组织结构 | 第21-22页 |
| 第二章 控制流图上的支配关系 | 第22-34页 |
| ·引言 | 第22-23页 |
| ·控制流图及相关算法 | 第23-25页 |
| ·支配关系的概念及算法 | 第25-30页 |
| ·前向支配关系与后向支配关系 | 第25页 |
| ·支配结点集合 | 第25-27页 |
| ·直接支配结点集合 | 第27-28页 |
| ·支配边界结点集合 | 第28-30页 |
| ·支配关系测试结果 | 第30-32页 |
| ·测试平台 | 第30-31页 |
| ·测试集介绍 | 第31-32页 |
| ·支配关系测试结果 | 第32页 |
| ·DJ图 | 第32-33页 |
| ·小结 | 第33-34页 |
| 第三章 静态单赋值技术研究 | 第34-52页 |
| ·引言 | 第34-35页 |
| ·传统的静态单赋值 | 第35-38页 |
| ·静态单赋值介绍 | 第35-36页 |
| ·传统的φ 函数摆放算法 | 第36-37页 |
| ·变量重命名 | 第37-38页 |
| ·基于支配边界逆转的多变量φ 函数摆放算法 | 第38-46页 |
| ·相关研究 | 第38-39页 |
| ·Cooper 的支配边界结点算法 | 第39-40页 |
| ·支配边界逆转 | 第40-41页 |
| ·多变量的φ 函数摆放算法 | 第41-43页 |
| ·实例分析 | 第43-44页 |
| ·算法正确性及复杂性分析 | 第44页 |
| ·测试结果 | 第44-46页 |
| ·减少冗余φ 函数 | 第46-47页 |
| ·增量化建立静态单赋值研究 | 第47-51页 |
| ·Choi 的增量化建立静态单赋值方法 | 第47-48页 |
| ·增量化建立静态单赋值算法的实现 | 第48-50页 |
| ·实例分析 | 第50-51页 |
| ·小结 | 第51-52页 |
| 第四章 OpenMP 程序可能并行执行关系研究 | 第52-72页 |
| ·引言 | 第52-53页 |
| ·例子程序 | 第53-54页 |
| ·OpenMP编程模型分析 | 第54-56页 |
| ·构建OpenMP控制流图 | 第56-60页 |
| ·相关研究 | 第56-57页 |
| ·OpenMP 的语法范围及限定 | 第57-58页 |
| ·OpenMP 控制流图的定义 | 第58页 |
| ·OpenMP 控制流图的构建 | 第58-60页 |
| ·OpenMP程序可能并行关系分析算法 | 第60-69页 |
| ·相关研究 | 第60-61页 |
| ·栅障同步及其静态单赋值形式 | 第61-62页 |
| ·基于栅障同步变量静态单赋值的MHP 算法 | 第62-66页 |
| ·实例分析 | 第66-68页 |
| ·算法正确性及复杂性分析 | 第68-69页 |
| ·增量化计算可能并行执行关系 | 第69页 |
| ·可能并行执行关系的分析及测试 | 第69-71页 |
| ·对比分析 | 第69-70页 |
| ·在数据竞争检测中的应用 | 第70页 |
| ·运算时间测试结果 | 第70-71页 |
| ·小结 | 第71-72页 |
| 第五章 循环级OpenMP 程序优化技术研究 | 第72-108页 |
| ·引言 | 第72-73页 |
| ·背景知识 | 第73-75页 |
| ·程序的中间表示 | 第73-74页 |
| ·线性不等式系统的表示方式 | 第74-75页 |
| ·循环级OpenMP程序的优化 | 第75-77页 |
| ·OpenMP 程序的三种编程模型 | 第75-76页 |
| ·循环级OpenMP 程序的优化技术 | 第76-77页 |
| ·并行结构合并与扩展 | 第77-81页 |
| ·并行结构合并与扩展的原则 | 第77-78页 |
| ·并行结构合并与扩展算法的实现 | 第78-81页 |
| ·栅障同步优化技术 | 第81-84页 |
| ·相关研究 | 第81页 |
| ·栅障同步消除 | 第81-83页 |
| ·栅障同步替换 | 第83-84页 |
| ·基于依赖关系分析消除冗余同步 | 第84-91页 |
| ·依赖关系分析技术研究 | 第84-85页 |
| ·依赖关系分析技术在并行结构扩展中的应用 | 第85-86页 |
| ·依赖关系分析技术在并行结构合并中的应用 | 第86-87页 |
| ·基于依赖关系分析的同步消除算法实现 | 第87-88页 |
| ·实例分析 | 第88-90页 |
| ·算法复杂性分析及正确性证明 | 第90-91页 |
| ·基于数据和计算划分消除冗余同步 | 第91-98页 |
| ·相关研究 | 第91页 |
| ·分布内存体系结构上的数据和计算划分 | 第91-92页 |
| ·OpenMP 程序的数据和计算划分 | 第92-94页 |
| ·基于数据和计算划分消除冗余同步的算法实现 | 第94-95页 |
| ·实例分析 | 第95-97页 |
| ·算法复杂性分析及正确性证明 | 第97-98页 |
| ·同步替换技术研究 | 第98-103页 |
| ·OpenMP 实现近邻同步 | 第98-99页 |
| ·OpenMP 实现流水并行 | 第99-101页 |
| ·基于数据和计算划分的同步替换算法的实现 | 第101-102页 |
| ·实例分析 | 第102-103页 |
| ·优化后OpenMP代码生成 | 第103-106页 |
| ·问题描述 | 第103页 |
| ·数据划分块大小的选取 | 第103-104页 |
| ·线程间的负载均衡问题 | 第104页 |
| ·拥有者计算原则讨论 | 第104-106页 |
| ·测试结果 | 第106-107页 |
| ·小结 | 第107-108页 |
| 第六章 结论及未来工作 | 第108-110页 |
| ·论文的贡献及创新点 | 第108-109页 |
| ·进一步研究工作 | 第109-110页 |
| 参考文献 | 第110-119页 |
| 作者简历 攻读博士学位期间完成的主要工作 | 第119-120页 |
| 致谢 | 第120页 |