摘要
Open MP规范了一系列的编译制导、环境变量和运行库,具有简单、可移植、支持增量并行等优点.但同时,采用FORK-JOIN模型所引起的频繁的线程管理开销也是制约Open MP程序性能的瓶颈之一.本文讨论了如何利用并行区的合并与扩展,实现并行区的重构,并在此基础上利用Open64的IPA优化部件所提供的全局间过程分析能力,实现跨越过程边界的并行块的合并.最终实验表明,该方法有效地改进了Open MP程序的运行性能.
Open MP regulates a series of compilation guidance, environment variables and runtime routines, having the advantages of simple operation, portability and supporting incremental parallel. But at the same time, the use of frequent thread management overhead FORK-JOIN model is one of the bottlenecks caused by Open MP program performance constraints.. This article discusses how to use the merge and extend parallel zone, reconstruct the parallel section, and on this basis, using global process analysis ability which is provided by IPA, one of the Open64 optimization components, realize the parallel block mergeing which acrosses process boundaries. The final experimental results show that the method improves the performance of Open MP programs effectively.
出处
《计算机系统应用》
2016年第1期154-159,共6页
Computer Systems & Applications
基金
"核高基"重大专项(2012ZX01034-001-001)
关键词
增量化并行
线程管理
IPA
并行区扩张
incremental parallelization
thread management
IPA
parallel region expansion