声明
1 绪论
1.1 研究背景
1.1.1 计算密集型应用的挑战
1.1.2 多核架构下的局部性问题
1.1.3 循环优化
1.2 国内外研究现状
1.2.1 多面体模型
1.2.2 循环分块技术
1.3 研究内容和意义
1.4 论文结构安排
2 多面体模型研究
2.1 多面体模型研究现状
2.2 数学背景
2.3 嵌套循环的多面体建模
2.3.1 主要概念
2.3.2 迭代空间
2.3.3 访问函数
2.4 多面体依赖关系
2.4.1 距离向量表示
2.4.2 依赖多面体
2.5 多面体调度转换
2.5.1 多面体调度
2.5.2 循环转换的实现
2.6 代码生成
2.7 本章小结
3 基于LLVM的多面体预分析优化
3.1 研究动机
3.2 相关研究
3.3 SCoP识别的相关问题
3.3.1 多面体模型识别限制分析
3.3.2 SCoP 检测算法分析
3.4 基于LLVM的SCoP识别优化
3.4.1 复杂循环格式优化
3.4.2 非仿射问题的静态优化
3.5 SCoP检测算法优化
3.5.1 基于区域的 SCoP 检测
3.5.2 SCoP 检测优化算法
3.6 本章小结
4 基于多面体模型的多边形分块优化
4.1 研究动机
4.2 相关研究
4.2.1 循环分块
4.2.2 多级分块
4.2.3 最佳分块大小和参数化分块
4.2.4 现代多边形分块
4.3 基于多面体模型的多边形分块
4.3.1 使用多面体模型确定重用
4.3.2 基于多面体模型的分区技术
4.3.3 分块停止条件
4.4 编排分区以及代码生成
4.4.1 多级缓存中的分块
4.4.2 多引用语句中的分块编排
4.4.3 分块并行执行优化
4.4.4 代码生成
4.4.5 整体算法
4.5 本章小结
5 测试与实验分析
5.1 SCoP预优化测试
5.1.1 多面体限制条件优化测试
5.1.2 SCoP 识别算法优化测试
5.1.3 优化性能测试
5.2 多边形分块测试
5.2.1 最佳分块停止条件测试
5.2.2 缓存局部性测试
5.2.3 不同平台下的性能测试
5.3 本章小结
6 总结与展望
6.1 本文工作总结
6.2 下一步工作展望
参考文献
作者简介及研究成果
致谢
郑州大学;