面向ARM高性能处理器的模板计算性能优化研究
| 摘要 | 第9-10页 |
| ABSTRACT | 第10页 |
| 第一章 绪论 | 第11-19页 |
| 1.1 研究背景 | 第11-13页 |
| 1.2 相关课题及研究现状 | 第13-14页 |
| 1.3 研究内容及意义 | 第14-17页 |
| 1.3.1 研究内容 | 第14-15页 |
| 1.3.2 研究意义 | 第15页 |
| 1.3.3 研究平台 | 第15-17页 |
| 1.4 论文组织结构 | 第17-19页 |
| 第二章 ARM高性能处理器概述 | 第19-31页 |
| 2.1 ARM处理器介绍 | 第19-21页 |
| 2.1.1 ARM发展历程 | 第19-20页 |
| 2.1.2 ARM处理器特点 | 第20-21页 |
| 2.2 ARMv8架构 | 第21-23页 |
| 2.3 ARMv8 Cache | 第23-28页 |
| 2.3.1 Cache基本结构 | 第24-26页 |
| 2.3.2 Cache控制器 | 第26-27页 |
| 2.3.3 Cache一致性 | 第27-28页 |
| 2.4 ARM指令集特点 | 第28-31页 |
| 第三章 模板计算的并行化 | 第31-46页 |
| 3.1 研究动机 | 第31-32页 |
| 3.1.1 多核多级Cache体系结构 | 第31-32页 |
| 3.1.2 数据局部性与并行化 | 第32页 |
| 3.2 OpenMP并行编程模型 | 第32-38页 |
| 3.2.1 并行编程模型 | 第32-34页 |
| 3.2.2 OpenMP编程 | 第34-38页 |
| 3.3 模板计算的并行化优化 | 第38-43页 |
| 3.3.1 典型的OpenMP并行方法 | 第38页 |
| 3.3.2 OpenMP并行优化方法 | 第38-43页 |
| 3.3.3 计算性能与可扩展性分析 | 第43页 |
| 3.4 实验结果及分析 | 第43-45页 |
| 3.4.1 并行性能 | 第44-45页 |
| 3.4.2 可扩展性 | 第45页 |
| 3.5 小结 | 第45-46页 |
| 第四章 模板计算的向量化 | 第46-54页 |
| 4.1 研究动机 | 第46-48页 |
| 4.1.1 多核多SIMD体系结构 | 第46-47页 |
| 4.1.2 ARM SIMD | 第47-48页 |
| 4.2 向量化技术 | 第48-50页 |
| 4.2.1 手工向量化 | 第48-49页 |
| 4.2.2 自动向量化 | 第49-50页 |
| 4.3 模板计算的外层循环向量化 | 第50-52页 |
| 4.3.1 外层循环的向量化 | 第50页 |
| 4.3.2 编译指导的SIMD向量化 | 第50-51页 |
| 4.3.3 模板计算的循环坍塌向量化 | 第51-52页 |
| 4.4 实验结果与分析 | 第52-53页 |
| 4.5 小结 | 第53-54页 |
| 第五章 结束语 | 第54-56页 |
| 5.1 工作总结 | 第54页 |
| 5.2 工作展望 | 第54-56页 |
| 致谢 | 第56-57页 |
| 参考文献 | 第57-61页 |
| 作者在学期间取得的学术成果 | 第61页 |