引用本文:倪友聪,吴瑞,杜欣,叶鹏,李汪彪,肖如良.基于频繁模式挖掘的GCC编译时能耗演化优化算法.软件学报,2019,30(5):1269-1287
【打印本页】   【下载PDF全文】   查看/发表评论  【EndNote】   【RefMan】   【BibTex】
←前一篇|后一篇→ 过刊浏览    高级检索
本文已被:浏览 3644次   下载 8364 本文二维码信息
码上扫一扫!
分享到: 微信 更多
基于频繁模式挖掘的GCC编译时能耗演化优化算法
倪友聪1,2, 吴瑞1, 杜欣1,2, 叶鹏3, 李汪彪4, 肖如良1
1.福建师范大学 数学与信息学院, 福建 福州 350117;2.福建省公共服务大数据挖掘与应用工程技术研究中心(福建师范大学), 福建 福州 350117;3.武汉纺织大学 数学与计算机学院, 湖北 武汉 430200;4.福建师范大学 光电与信息工程学院, 福建 福州 350117
摘要:
演化算法通过搜寻GCC编译器最优编译选项集,对可执行代码的能耗进行改进,以达到编译时优化嵌入式软件能耗的目的.但这类算法未考虑多个编译选项之间可能存在相互影响,导致了其解质量不高且收敛速度慢的问题.针对这一不足,设计了一种基于频繁模式挖掘的遗传算法GA-FP.该算法在演化过程中利用频繁模式挖掘得到出现频度高且能耗改进大的一组编译选项,并以此作为启发式信息,设计了"增添"和"删减"两种变异算子,帮助提高解质量和加快收敛速度.与Tree-EDA算法在5个不同领域的8个典型案例下进行对比实验,结果表明,该GA-FP算法不仅能够更有效地降低软件能耗(平均降低2.5%,最高降低21.1%),而且还能在获得不劣于Tree-EDA能耗优化效果的前提下更快地收敛(平均加快34.5%,最高加快83.3%),最优解中编译选项的相关性分析进一步验证了所设计变异算子的有效性.
关键词:  软件能耗  编译优化  嵌入式软件  演化算法
DOI:10.13328/j.cnki.jos.005734
分类号:
基金项目:福建省新世纪优秀人才项目;福建省自然科学基金(2015J01235,2017J01498);福建省教育厅JK类项目(JK2015006);湖北省自然科学基金(2018CFB689)
Evolutionary Algorithm for Optimization of Energy Consumption at GCC Compile Time Based on Frequent Pattern Mining
NI You-Cong1,2, WU Rui1, DU Xin1,2, YE Peng3, LI Wang-Biao4, XIAO Ru-Liang1
1.College of Mathematics and Informatics, Fujian Normal University, Fuzhou 350117, China;2.Fujian Provincial Engineering Technology Research Center for Public Service Big Data Mining and Application(Fujian Normal University), Fuzhou 350117, China;3.College of Mathematics and Computer Science, Wuhan Textile University, Wuhan 430200, China;4.College of Photonic and Electronic Engineering, Fujian Normal University, Fuzhou 350117, China
Abstract:
The evolutionary algorithms have been used to improve the energy consumption of executable code of embedded software by searching the optimal compilation options of GCC compiler. However, such algorithms do not consider the possible interaction between multiple compilation options so that the quality of their solutions is not high, and their convergence speed is slow. To solve this problem, this study designs an evolutionary algorithm based on frequent pattern mining, called GA-FP. In the process of evolution, GA-FP uses frequent pattern mining to obtain a set of compilation options which are of high-frequency and contribute to significant improvement on energy consumption. The derived options are used as the heuristic information and two mutation operators of ADD and DELETE are designed to increase the quality of solution and accelerate the convergence speed. The comparative experiments are done on 8 typical cases in 5 different fields between Tree-EDA and GA-FP. The experimental results indicate that the GA-FP can not only reduce the energy consumption of software more effectively (the average and maximal reduction ratios are 2.5% and 21.1% respectively), but also converge faster (the average of 34.5% faster and up to 83.3% faster) when the energy optimization effect obtained by GA-FP is no less than that of Tree-EDA. The correlation analysis of compilation options in the optimal solution further validates the effectiveness of the designed mutation operators.
Key words:  software energy  compilation optimization  embedded software  evolutionary algorithm

引用本文:
【打印本页】   【下载PDF全文】   查看/发表评论  【EndNote】   【RefMan】   【BibTex】
←前一篇|后一篇→ 过刊浏览    高级检索
本文已被:浏览次   下载  
分享到: 微信 更多
摘要:
关键词:  
DOI:
分类号:
基金项目:
Abstract:
Key words: