首页> 中文学位 >OpenMP并行编程模型与能性优化方法的研究及应用
【6h】

OpenMP并行编程模型与能性优化方法的研究及应用

代理获取

摘要

随着计算机硬件的不断发展,现在的多核处理器已经越来越成熟,目前推出的个人PC机处理器已经是双核或四核,因此,充分利用多核处理器的优势已经势在必行。在这样的情况下,以OpenMP为代表的共享存储模型编程技术随着多核技术的进步而迅猛地发展起来。
   OpenMP编程模型是近些年来在共享存储系统基础上兴起的并行编程模型,目前在Windows和Unix/Linux平台上都有具体的实现,是一种非常适合共享存储系统的编程标准。利用OpenMP编写并行程序比传统的MPI开发程序更加简单,这是由于OpenMP利用多线程技术,比MPI的多进程方式管理更加节省开销。因此,OpenMP已成为共享存储编程模型事实上的标准。
   本文首先研究了多核存储体系结构及适应该体系结构的并行计算模型,在此基础上进一步研究了并行程序设计模型和设计方法,分析了影响多核并行计算性能的主要因素,为进一步研究多核环境下OpenMP并行算法的设计及并行程序的开发奠定了基础。
   通过分析OpenMP编程模型,重点研究了OpenMP并行编程模式的设计形式——fork-join模式和SPMD模式的程序设计,并经实验分析比较了两种模式开发程序的特点,验证了利用SPMD模式开发的大型应用程序具有的性能开销较小、可扩展性好等优点。在研究OpenMP并行程序的开销模型的基础上,分析了影响OpenMP并行算法性能的因素,提出了一套OpenMP程序的优化方法。优化方法包括并行域的扩展和合并、Cache命中率优化、循环调度方式优化、变量属性优化、处理器线程绑定优化和降低伪共享问题的优化等。通过实验测试表明,这些优化方法在解决实际问题中取得了较好的应用效果。
   本文分析了大型稀疏矩阵的结构特点,并利用CSR压缩存储方式对稀疏矩阵进行压缩存储,从而节省了稀疏矩阵的存储空间。在此基础上,进一步分析了由于压缩存储结构而导致的性能因素,并提出了相应的OpenMP编程解决方案。
   设计和实现了求解大型稀疏矩阵特征值的逆幂法,并且实现了逆幂法求解过程中求解大型稀疏方程组的共轭梯度法(CG)。通过分析逆幂法和共轭梯度法的内在并行性,设计了利用OpenMP进行逆幂法和共轭梯度法的并行化方案,并且给出了具体实现方法。
   通过实验和结果表明,利用SPMD模式设计的openMP并行程序在求解大型稀疏矩阵应用中具有良好的性能表现,能够大幅度提升程序性能。本文提出的OpenMP并行程序优化方法也在求解大型稀疏矩阵问题上得到了验证,实践表明,通过综合使用这些并行程序优化方法,能够显著地提升OpenMP应用程序的性能。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号