摘要 | 第1-5页 |
ABSTRACT | 第5-11页 |
第1章 绪论 | 第11-20页 |
·研究背景及意义 | 第11-14页 |
·研究现状 | 第14-17页 |
·CPU-GPU 异构计算的研究现状 | 第14-16页 |
·多核并行编程模型的研究现状 | 第16-17页 |
·本文的研究内容 | 第17-18页 |
·CPU-GPU 异构平台的性能优化 | 第17-18页 |
·生物信息学中的问题求解 | 第18页 |
·平台无关的多核并行编程模型 | 第18页 |
·论文结构 | 第18-20页 |
第2章 CUDA 计算平台 | 第20-35页 |
·CUDA 简介 | 第20-23页 |
·CUDA 理论基础 | 第20-21页 |
·CUDA 的应用领域及成功案例 | 第21-22页 |
·OpenCL | 第22-23页 |
·硬件体系结构 | 第23-26页 |
·硬件设计 | 第23-25页 |
·计算能力 | 第25-26页 |
·软件模型 | 第26-30页 |
·线程组织结构 | 第26-28页 |
·存储器层次结构 | 第28-29页 |
·编程模型 | 第29-30页 |
·编程规范 | 第30-34页 |
·C 语言扩展 | 第30-31页 |
·函数与变量类型限定符 | 第31-32页 |
·内置类型及内建变量 | 第32-33页 |
·内核函数和执行配置 | 第33-34页 |
·运行时API 和驱动API | 第34页 |
·本章小结 | 第34-35页 |
第3章 CPU-GPU 异构计算平台的性能优化 | 第35-51页 |
·影响程序性能的关键因素 | 第35-36页 |
·访存延迟 | 第35-36页 |
·负载分配 | 第36页 |
·全局同步开销 | 第36页 |
·访存优化策略 | 第36-43页 |
·优化存储器之间的数据传输 | 第37-39页 |
·利用全局存储器的联合访问 | 第39-41页 |
·使用高效的共享存储器 | 第41-43页 |
·代码优化策略 | 第43-44页 |
·指令性能和延迟 | 第43-44页 |
·避免控制流分支 | 第44页 |
·高级优化策略 | 第44-46页 |
·计算与通信重叠 | 第44-45页 |
·主机和设备并行计算 | 第45页 |
·用原子函数实现全局同步 | 第45-46页 |
·实例验证 | 第46-50页 |
·异构平台上的并行归并排序算法 | 第46-47页 |
·实验结果及理论分析 | 第47-50页 |
·本章小结 | 第50-51页 |
第4章 CPU-GPU 异构计算平台在生物信息学中的应用 | 第51-63页 |
·引言 | 第51页 |
·问题描述 | 第51-53页 |
·序列比对问题 | 第51-52页 |
·Smith-Waterman 算法 | 第52-53页 |
·Smith-Waterman 算法在异构系统上的实现 | 第53-58页 |
·基于反对角线的并行实现 | 第53-54页 |
·基于列的并行实现 | 第54-58页 |
·优化方法及实验结果 | 第58-62页 |
·循环使用共享存储器 | 第58-59页 |
·采用类似于规约的方法计算最大值 | 第59页 |
·实现了对全局存储器的联合访问 | 第59-60页 |
·实验结果 | 第60-62页 |
·本章小结 | 第62-63页 |
第5章 平台无关的多核并行编程模型 | 第63-71页 |
·引言 | 第63-64页 |
·OpenMM 简介 | 第64-66页 |
·OpenMM 概述 | 第64-65页 |
·OpenMM 设计原则 | 第65页 |
·OpenMM 的体系结构 | 第65-66页 |
·多核并行编程模型的研究意义 | 第66-67页 |
·平台无关的多核并行编程模型 | 第67-68页 |
·原型系统及实验验证 | 第68-69页 |
·面向科学计算的原型系统 | 第68-69页 |
·实验结果 | 第69页 |
·本章小结 | 第69-71页 |
第6章 总结 | 第71-74页 |
·本文工作 | 第71-72页 |
·本文成果 | 第72页 |
·进一步的工作 | 第72-74页 |
参考文献 | 第74-78页 |
附录1 插图索引 | 第78-79页 |
附录2 表格索引 | 第79-80页 |
致谢 | 第80-82页 |
在读期间发表的学术论文 | 第82-83页 |
在读期间参与的科研项目 | 第83页 |