检索规则说明:AND代表“并且”;OR代表“或者”;NOT代表“不包含”;(注意必须大写,运算符两边需空一格)
检 索 范 例 :范例一: (K=图书馆学 OR K=情报学) AND A=范并思 范例二:J=计算机应用与软件 AND (U=C++ OR U=Basic) NOT M=Visual
作 者:郭振华[1] 吴艳霞[1] 安龙飞 张国印[1] 卢文祥 GUO Zhenhua;WU Yanxia;AN Longfei;ZHANG Guoyin;LU Wenxiang(College of Computer Science and Technology, Harbin Engineering University, Harbin 150001, China)
机构地区:[1]哈尔滨工程大学计算机科学与技术学院,哈尔滨150001
出 处:《计算机工程与应用》2017年第3期41-46,共6页Computer Engineering and Applications
基 金:国家自然科学基金(No.61003036);计算机体系结构国家重点实验室开放课题(No.CARCH201301);中央高校基本科研业务经费(No.HEUCF100606)
摘 要:函数内联(Function Inlining)是使用函数体代替函数调用的一种编译优化技术。LLVM中原生的内联模型只根据函数体的大小来判断函数内联与否,而没有考虑函数的调用次数和后续的优化。针对这个问题,提出了基于函数调用次数(NFC)和考虑后续循环合并(BLF)的新内联模型。首先,通过NFC模型对被多次调用的函数进行内联,进而减少更多因函数调用而产生的额外消耗。其次,通过BLF模型能够识别出进行内联后可以进一步进行循环合并优化的函数,为后续循环合并优化提供支持。实验结果表明,提出的函数内联优化技术是可行的,测试程序平均加速比为1.52%。Function inlining is a compile optimization technique,that is using the body of a function instead of the callsite.LLVM’s original inline model considers the factor of the size of the function,but not considers the factor of executionfrequency and potential optimization opportunities.In this paper,a new inline model,considers both execution frequencyand potential optimization opportunities,proposed to avoid drawbacks of original inline model.The NFC model,can reduce consumption generated by calling more function calls,by inlining functions repeatedly called.The BLF modelprovides supports for the subsequent optimization for loop fusion,by inlining functions.In the experiment,function inliningoptimization model proposed by this paper is effective.Average speedup ratio of test program is1.52%.
分 类 号:TP314[自动化与计算机技术—计算机软件与理论]
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在链接到云南高校图书馆文献保障联盟下载...
云南高校图书馆联盟文献共享服务平台 版权所有©
您的IP:216.73.216.222