一种编译优化选项优化方法、装置、智能终端及存储介质制造方法及图纸

技术编号:38379264 阅读:11 留言:0更新日期:2023-08-05 17:38
本发明专利技术提供一种编译优化选项优化方法、装置、智能终端及存储介质,具体涉及编译优化技术领域,首先基于各个编译优化选项利用优化算法随机生成初始种群,并通过设置各个编译优化选项的置信度得到离散化的编译优化选项组合;然后利用离散化的编译优化选项组合分别对待编译的源代码进行优化处理,根据优化结果计算各个离散化的编译优化选项组合的适应度,并利用适应度获得当前最佳的编译优化选项组合和改进的编译优化选项组合;最后通过迭代优化获得目标编译优化选项组合。该方案能够确保目标编译优化选项组合是全局最优解,提高了优化算法的准确性,而且仅基于编译优化选项的置信度和优化算法的适应度进行迭代优化,实现过程简单、高效。高效。高效。

【技术实现步骤摘要】
一种编译优化选项优化方法、装置、智能终端及存储介质


[0001]本专利技术涉及编译器优化
,尤其涉及的是一种编译优化选项优化方法、装置、智能终端及存储介质。

技术介绍

[0002]编译器是一种软件工具,可以将高级语言编译为计算机可以理解的汇编语言。编译器在保证编译准确性的基础上,通常从编译速度、生成代码的大小和生成的可执行文件的执行速度三个方面进行优化。为了提高可执行文件的运行速度,编译器会通过常量传播、常量折叠、无用代码消除等方法进行编译优化。编译器开发者将这些优化方法打包为对应的编译优化选项内置在编译器中,用户可以根据需要选择开启的选项。由于不同的代码需要不同的编译优化选项组合进行优化,因此需要针对不同的源代码找到不同的编译优化选项组合。但是由于编译优化选项数量大,其排列组合构成的搜索空间也很大,通过人工调优和暴力搜索方法并不能很好地在有限时间内找到目标编译优化选项组合。因此,如何减小搜索空间,是在有限时间内找到最佳编译优化选项组合的关键。
[0003]现有的编译优化选项的优化方法主要采用基于在线学习的优化方法。目前在线学习的优化方法,首先基于某种算法建立预测模型,然后在指数级别的搜索空间中以迭代更新预测模型的方式寻找较为优秀的编译标志组合,作为算法所认为的最佳编译标志组合。例如采用贝叶斯方法确定最佳编译选项因子或编译优化选项组合。该方法的核心思想是利用搜索空间中已知区域所积累的知识来指导选择剩余区域中的样本,由于剩余区域中的未知优化选项数量繁多,因此通过选择若干个包含最优选项的未知优化选项的子集作为候选优化选项组合,但是最终找到的最优的优化选项组合有可能是局部最优解,导致所找到的最优的优化选项组合不够准确。而且通过高斯衰减函数更新训练集,实现步骤繁琐复杂。

技术实现思路

[0004]鉴于上述现有技术的不足,本专利技术的目的在于提供编译优化选项优化方法、装置、智能终端及存储介质,旨在解决现有技术中存在的算法的实现步骤繁琐复杂、且准确性较低的问题。
[0005]为了实现上述目的,本专利技术第一方面提供一种编译优化选项优化方法,包括以下步骤:
[0006]基于各个编译优化选项,利用优化算法随机生成包括若干个编译优化选项组合的初始种群,且每个编译优化选项组合均由若干个编译优化选项排列组合而成;
[0007]设置每个所述编译优化选项的置信度,并基于所述置信度将对应的编译优化选项进行二值化处理,获得离散化的编译优化选项组合;
[0008]利用所有的所述离散化的编译优化选项组合分别对待编译的源代码进行优化处理,根据编译后的源代码的运行结果计算所述离散化的编译优化选项组合的适应度,获得当前最佳的编译优化选项组合,并根据所述离散化的编译优化选项组合及所述优化算法的
适应度生成改进的编译优化选项组合;
[0009]利用所有的所述改进的编译优化选项组合重新生成更新后的种群,重复上述基于置信度获得离散化的编译优化选项组合,以及基于待编译的源代码的优化结果和适应度,获得当前最佳的编译优化选项组合和改进的编译优化选项组合的步骤,直至达到预设的迭代终止条件,获得每次迭代对应的所述当前最佳的编译优化选项组合,通过比较所有的所述当前最佳的编译优化选项组合,得到目标编译优化选项组合。
[0010]可选的,所述设置每个所述编译优化选项的置信度,包括:
[0011]根据各个所述编译优化选项对所述源代码在编译前后的运行性能的影响程度将各个所述编译优化选项进行排序,并根据排序结果为每个所述编译优化选项设置置信度。
[0012]可选的,所述基于所述置信度将对应的编译优化选项进行二值化处理,包括:
[0013]若所述编译优化选项的置信度大于等于设定的编译优化选项的置信度阈值,则将对应的编译优化选项的状态设置为开启状态;若所述编译优化选项的置信度小于设定的编译优化选项的置信度阈值,则将对应的编译优化选项的状态设置为关闭状态。
[0014]可选的,所述编译后的源代码的运行结果为经过转换和编译后生成的可执行文件的运行时间,根据所述运行时间确定所述离散化的编译优化选项组合相对于当前优化算法的适应度。
[0015]可选的,所述根据所述离散化的编译优化选项组合及算法的适应度生成改进的编译优化选项组合,包括:
[0016]记录各个所述可执行文件的运行时间,并选取所述运行时间小于预设的时间阈值的可执行文件对应的离散化的编译优化选项组合作为改进的编译优化选项组合。
[0017]可选的,所述利用所有的改进的编译优化选项组合重新生成更新后的种群,包括:
[0018]剔除重复的所述改进的编译优化选项组合之后,获取所有所述改进的编译优化选项组合包括的所有种类的编译优化选项;
[0019]将所述编译优化选项进行排列组合构成若干个新的编译优化选项组合,并由所述新的编译优化选项组合生成更新后的种群。
[0020]可选的,还包括:
[0021]采用不同的所述优化算法分别得到各个所述优化算法下的目标编译优化选项组合;
[0022]比较各个所述目标编译优化选项组合对所述待编译的源代码的优化结果,得到对所述源代码的优化结果最佳的优化算法。
[0023]本专利技术第二方面提供一种编译优化选项优化装置,主要包括:
[0024]初始种群生成模块,用于基于各个编译优化选项,利用优化算法随机生成包括若干个编译优化选项组合的初始种群,且每个编译优化选项组合均由若干个编译优化选项排列组合而成;
[0025]编译优化选项组合处理模块,用于设置每个所述编译优化选项的置信度,并基于所述置信度将对应的编译优化选项进行二值化处理,获得离散化的编译优化选项组合;
[0026]迭代优化模块,用于利用所有的所述离散化的编译优化选项组合分别对待编译的源代码进行优化处理,根据编译后的源代码的运行结果计算所述离散化的编译优化选项组合的适应度,获得当前最佳的编译优化选项组合,并根据所述离散化的编译优化选项组合
及所述优化算法的适应度生成改进的编译优化选项组合;
[0027]并利用所有的所述改进的编译优化选项组合重新生成更新后的种群进行迭代,通过比较所有的所述当前最佳的编译优化选项组合,得到目标编译优化选项组合。
[0028]本专利技术第三方面提供一种智能终端,所述智能终端包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的编译优化选项优化程序,所述编译优化选项优化程序被所述处理器执行时实任意一项上述编译优化选项优化方法的步骤。
[0029]本专利技术第四方面提供一种计算机可读存储介质,所述计算机可读存储介质上存储有编译优化选项优化程序,所述编译优化选项优化程序被处理器执行时实现任意一项上述编译优化选项优化方法的步骤。
[0030]与现有技术相比,本方案的有益效果如下:
[0031]本申请基于各个编译优化选项,利用优化算法随机初始化若干个编译优化选项组合,使得各个编译优化选项被选取到的概率相同,以确保初始种群中尽可能包括所本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种编译优化选项优化方法,其特征在于,包括以下步骤:基于各个编译优化选项,利用优化算法随机生成包括若干个编译优化选项组合的初始种群,且每个编译优化选项组合均由若干个编译优化选项排列组合而成;设置每个所述编译优化选项的置信度,并基于所述置信度将对应的编译优化选项进行二值化处理,获得离散化的编译优化选项组合;利用所有的所述离散化的编译优化选项组合分别对待编译的源代码进行优化处理,根据编译后的源代码的运行结果计算所述离散化的编译优化选项组合的适应度,获得当前最佳的编译优化选项组合,并根据所述离散化的编译优化选项组合及所述优化算法的适应度生成改进的编译优化选项组合;利用所有的所述改进的编译优化选项组合重新生成更新后的种群,重复上述基于置信度获得离散化的编译优化选项组合,以及基于待编译的源代码的优化结果和适应度,获得当前最佳的编译优化选项组合和改进的编译优化选项组合的步骤,直至达到预设的迭代终止条件,获得每次迭代对应的所述当前最佳的编译优化选项组合,通过比较所有的所述当前最佳的编译优化选项组合,得到目标编译优化选项组合。2.根据权利要求1所述的编译优化选项优化方法,其特征在于,所述设置每个所述编译优化选项的置信度,包括:根据各个所述编译优化选项对所述源代码在编译前后的运行性能的影响程度,将各个所述编译优化选项进行排序,并根据排序结果为每个所述编译优化选项设置置信度。3.根据权利要求2所述的编译优化选项优化方法,其特征在于,所述基于所述置信度将对应的编译优化选项进行二值化处理,包括:若所述编译优化选项的置信度大于等于设定的编译优化选项的置信度阈值,则将对应的编译优化选项的状态设置为开启状态;若所述编译优化选项的置信度小于设定的编译优化选项的置信度阈值,则将对应的编译优化选项的状态设置为关闭状态。4.根据权利要求1所述的编译优化选项优化方法,其特征在于,所述编译后的源代码的运行结果为经过转换和编译后生成的可执行文件的运行时间,根据所述运行时间确定所述离散化的编译优化选项组合相对于当前优化算法的适应度。5.根据权利要求4所述的编译优化选项优化方法,其特征在于,所述根据所述离散化的编译优化选项组合及算法的适应度生成改进的编译优化选项组合,包括:记录各个所述可执行文件的运行时间,并选取所述运行时间小于预设的时间阈值的可执行文...

【专利技术属性】
技术研发人员:李宽肖国键覃思源殷建平
申请(专利权)人:东莞理工学院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1