基于多核环境下的多线程并行程序设计方法研究
摘要 | 第1-5页 |
Abstract | 第5-9页 |
1. 引言 | 第9-14页 |
·研究背景 | 第9-11页 |
·国内外研究现状 | 第11-12页 |
·本文研究内容与结构 | 第12-14页 |
2. 并行计算机体系结构 | 第14-22页 |
·并行计算机结构模型 | 第14-18页 |
·弗林(Flynn)分类法 | 第14页 |
·单指令流多数据流机(SIMD) | 第14-15页 |
·并行向量处理机(PVP) | 第15-16页 |
·对称多处理机(SMP) | 第16页 |
·大规模并行处理机(MPP) | 第16-17页 |
·分布共享存储处理机(DSM) | 第17页 |
·工作站机群 (COW) | 第17-18页 |
·并行计算机访存模型 | 第18-20页 |
·均匀存储访问(UMA) | 第18-19页 |
·非均匀存储访问(NUMA) | 第19页 |
·全高速缓存存储结构(COMA) | 第19页 |
·CC-NUMA 多处理机 | 第19页 |
·非远程存储访问(NORMA) | 第19-20页 |
·并行计算模型 | 第20-21页 |
·同步 PRAM 模型 | 第20页 |
·异步 PRAM 模型 | 第20页 |
·BSP 模型 | 第20-21页 |
·Logp 模型 | 第21页 |
·本章小结 | 第21-22页 |
3. 并行编程模型 | 第22-28页 |
·分布式存储编程模型 | 第22-23页 |
·共享存储编程模型 | 第23-25页 |
·OpenMP | 第23-24页 |
·Pthreads | 第24-25页 |
·异构编程模型 | 第25-27页 |
·CUDA | 第25-26页 |
·OpenCL | 第26-27页 |
·本章小结 | 第27-28页 |
4. 实验环境搭建与并行性能分析 | 第28-38页 |
·实验环境搭建 | 第28-31页 |
·单节点配置 | 第28页 |
·配置 MPI | 第28-30页 |
·程序的执行命令 | 第30页 |
·ubuntu 环境下 C 程序的编译和执行 | 第30页 |
·ubuntu 环境下 MPI 程序的编译和执行 | 第30-31页 |
·并行程序的性能分析 | 第31-37页 |
·加速比(speedup) | 第31-32页 |
·加速比定律 | 第32-36页 |
·并行粒度 | 第36-37页 |
·本章小结 | 第37-38页 |
5. 混合编程研究 | 第38-50页 |
·MPI+OpenMP 混合编程模型 | 第38-39页 |
·MPI+OpenMP 矩阵相乘实现 | 第39-42页 |
·矩阵相乘串行算法 | 第39-40页 |
·基于 MPI 的矩阵相乘 | 第40-41页 |
·MPI+OpenMP 的矩阵相乘混合编程 | 第41-42页 |
·基于 OpenCL 的异构编程 | 第42-49页 |
·OpenCL 程序流程 | 第42-43页 |
·基于 OpenCL 矩阵相乘实现 | 第43-49页 |
·本章小结 | 第49-50页 |
6. 总结与展望 | 第50-52页 |
·总结 | 第50页 |
·展望 | 第50-52页 |
参考文献 | 第52-55页 |
附录:攻读学位期间发表的学术论文及参与项目 | 第55-56页 |
致谢 | 第56-57页 |