迭代编译是程序性能优化技术研究热点之一,该技术面临优化开销大、难以处理复杂程序结构等问题。项目对此开展了研究,主要工作及成果包括(1)提出基于Nelder-Mead单纯形的优化参数搜索方法,性能优于遗传算法和随机算法。(2)基于机器体系结构参数和矩阵乘程序的经验知识构造性能模型修剪优化空间,利用遗传算法快速搜索优化空间,获得更优的性能优化效果。(3)提出结合单变量边缘分布算法和单纯形方法的参数搜索算法UMDA/S,可以找到更优参数值。(4)提出基于硬件性能数据的优化变换决策模型,基于硬件性能模型确定程序变换顺序,划分优化空间,基于单纯形算法寻找最优参数,有效提高程序性能。(5)提出集成多面体表示技术和性能模型的迭代编译技术,同时挖掘最优循环变换序列和最优参数,优化效果优于单纯基于多面体模型的循环变换方法。(6)提出通用的迭代编译总体框架,集成了项目研究成果和其它一些有效技术,具有较好的适应性。上述成果可显著优化程序性能,降低迭代编译开销,适用于通用科学计算程序,为程序性能优化系统设计提供了新的思路和方法。
英文主题词Iterative compilation; performance models; search algorithms; performance improvement; optimization cost