摘要
本文设计并实现了一个基于值-剖面的Open MP运行时优化系统CCRG OpenMP。它能够根据常见的值的组合优化并行区域,并且在运行时只有并行区代码需要重编译和管理。CCRG OpenMP基于动态重编译技术,避免了目前静态多版本技术的不足。同时,值-剖面的收集和分析由独立的动态优化器线程完成,降低了动态重编译引入的开销。SPEC OMP2001基准测试表明,我们基于值-剖面的Open MP优化系统能够较大地提高程序性能。
This paper presents the design and implementation of an OpenMP runtime optimization system based on valueprofiling, called CCRG OpenMP, where the parallel regions of OpenMP programs can be well optimized based on the common combinations of values. Moreover, only the code within the parallel regions needs to be re-compiled and managed at runtime. A distinguished feature of CCRG OpenMP is that a dynamic re-compile technique is adopted to overcome the shortcomings of the static muhi-versional approach. A separate dynamic optimizer is developed to collect and analyze value-profiles for reducing the overhead introduced by re-compile. The SPEC OpenMP benchmarks show the presented value-profile based optimization for OpenMP can improve the performance significantly.
出处
《计算机工程与科学》
CSCD
2006年第12期124-128,共5页
Computer Engineering & Science
基金
国家863计划资助项目(2004AA1Z2210
2002AA1Z2101)