共享主存多SIMD结构编译优化及结构研究
| 目录 | 第1-11页 |
| 摘要 | 第11-14页 |
| Abstract | 第14-17页 |
| 第一章 引言 | 第17-33页 |
| ·多媒体应用 | 第17-19页 |
| ·共享主存多SIMD结构 | 第19-22页 |
| ·多SIMD结构 | 第19-21页 |
| ·共享主存多SIMD结构 | 第21-22页 |
| ·共享主存多SIMD结构编译优化的意义 | 第22-25页 |
| ·共享主存多SIMD结构面临的主要问题 | 第25-29页 |
| ·共享主存多SIMD结构编译发展滞后的原因 | 第25-28页 |
| ·共享主存多SIMD结构编译需解决的主要问题 | 第28-29页 |
| ·已有研究 | 第29-31页 |
| ·本文的贡献及结构安排 | 第31-33页 |
| 第二章 底层结构 | 第33-43页 |
| ·Morphosys概述和特征 | 第33-35页 |
| ·Morphosys概述 | 第33-34页 |
| ·基本特征 | 第34-35页 |
| ·Morphosys组件的设计与实现 | 第35-41页 |
| ·TinyRisc | 第35-36页 |
| ·多SIMD功能单元 | 第36-39页 |
| ·指令缓冲器 | 第39-40页 |
| ·共享主存 | 第40-41页 |
| ·DMA控制器 | 第41页 |
| ·Morphosys的物理设计 | 第41-43页 |
| 第三章 多媒体程序特性分析 | 第43-53页 |
| ·程序包简介 | 第43-45页 |
| ·多媒体程序运行时特点 | 第45-47页 |
| ·代码形式特点 | 第47-53页 |
| ·广泛使用指针进行运算 | 第47页 |
| ·大量的循环展开 | 第47-48页 |
| ·多媒体典型操作的变体很多 | 第48-50页 |
| ·使用映射数组替代复杂计算 | 第50-51页 |
| ·普遍使用宽数据类型 | 第51-53页 |
| 第四章 问题分析 | 第53-61页 |
| ·并行性分析 | 第53-57页 |
| ·共享数据总线对并行的限制 | 第53-54页 |
| ·基于广播的并行 | 第54-55页 |
| ·基于数据复用的并行 | 第55-56页 |
| ·数据流水线并行 | 第56-57页 |
| ·有限寄存器对并行的限制 | 第57-59页 |
| ·结构的问题 | 第59-61页 |
| 第五章 优化算法 | 第61-89页 |
| ·预备优化 | 第61-66页 |
| ·SIMD优化 | 第61-62页 |
| ·代码划分 | 第62-64页 |
| ·向量数据重用信息的计算 | 第64-66页 |
| ·仿射划分 | 第66-71页 |
| ·仿射划分基本概念 | 第67-69页 |
| ·仿射划分算法 | 第69-70页 |
| ·只读数组复制的计算 | 第70-71页 |
| ·数据流水线信息识别 | 第71-74页 |
| ·实时数据分析 | 第71-72页 |
| ·数据流水方向的确定 | 第72-73页 |
| ·冗余通信的消除 | 第73-74页 |
| ·划分循环选择 | 第74-77页 |
| ·划分循环选择 | 第74-75页 |
| ·计算-通信的转换 | 第75-77页 |
| ·数据重用空间的构造 | 第77页 |
| ·资源分配 | 第77-81页 |
| ·寄存器分配 | 第77-79页 |
| ·平均指令级并行性计算 | 第79-81页 |
| ·资源分配 | 第81页 |
| ·调度算法 | 第81-84页 |
| ·指令调度 | 第81-83页 |
| ·针对共享主存多SIMD结构的调度算法 | 第83-84页 |
| ·调度实例 | 第84-86页 |
| ·总结 | 第86-89页 |
| 第六章 其他优化算法 | 第89-95页 |
| ·规约操作 | 第89-91页 |
| ·规约变量的SIMD优化的额外处理 | 第89-90页 |
| ·规约变量的调度优化的额外处理 | 第90-91页 |
| ·数据预取 | 第91-95页 |
| ·数据预取概述 | 第91-92页 |
| ·基于软件流水线的数据预取 | 第92-95页 |
| 第七章 实验结果 | 第95-103页 |
| ·SimpleScalar模拟器 | 第95-97页 |
| ·SimpleScalar模拟器简介 | 第95页 |
| ·SimpleScalar模拟器工具集概述 | 第95-96页 |
| ·SimpleScalar模拟器工具集概述 | 第96-97页 |
| ·共享主存多SIMD结构模拟器的实现 | 第97-99页 |
| ·模拟器的实现 | 第97-98页 |
| ·模拟器GCC工具链的调整 | 第98-99页 |
| ·测试程序 | 第99-100页 |
| ·实验结果 | 第100-103页 |
| 第八章 性能分析 | 第103-115页 |
| ·阵列大小 | 第104-105页 |
| ·GPPC执行模式 | 第105-107页 |
| ·寄存器个数 | 第107-109页 |
| ·互联 | 第109-110页 |
| ·共享数据总线 | 第110-112页 |
| ·VLIW指令缓冲区 | 第112-114页 |
| ·总结 | 第114-115页 |
| 第九章 总结 | 第115-119页 |
| ·结论 | 第115-117页 |
| ·将来的工作 | 第117-119页 |
| 参考文献 | 第119-127页 |
| 发表文章目录 | 第127-129页 |
| 致谢 | 第129-131页 |