CN112035116B - 多目标编译优化序列选择的代理建模方法 - Google Patents

多目标编译优化序列选择的代理建模方法 Download PDF

Info

Publication number
CN112035116B
CN112035116B CN202010869346.0A CN202010869346A CN112035116B CN 112035116 B CN112035116 B CN 112035116B CN 202010869346 A CN202010869346 A CN 202010869346A CN 112035116 B CN112035116 B CN 112035116B
Authority
CN
China
Prior art keywords
population
compiling
optimization
code
fitness
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010869346.0A
Other languages
English (en)
Other versions
CN112035116A (zh
Inventor
江贺
高国军
任志磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dalian University of Technology
Original Assignee
Dalian University of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dalian University of Technology filed Critical Dalian University of Technology
Priority to CN202010869346.0A priority Critical patent/CN112035116B/zh
Publication of CN112035116A publication Critical patent/CN112035116A/zh
Application granted granted Critical
Publication of CN112035116B publication Critical patent/CN112035116B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • G06F8/443Optimisation
    • G06F8/4434Reducing the memory space required by the program code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • G06F8/443Optimisation
    • G06F8/4441Reducing the execution time required by the program code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/12Computing arrangements based on biological models using genetic models
    • G06N3/126Evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Biology (AREA)
  • Physiology (AREA)
  • Genetics & Genomics (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

本发明提供一种多目标编译优化序列选择的代理建模方法,是一种针对其计算代价约束问题的解决方案,属于编译器优化领域。首先将编译优化序列进行二进制编码,针对两个优化目标代码规模和运行速度分别设计适应度函数,在选择、交叉操作后产生的子种群,并与父种群合并快速非支配排序产生新种群,最终获得Pareto最优解集。在搜索迭代过程中,使用编译优化序列以及对应的两个目标适应度值分别构造代理模型,针对进化操作产生的子种群使用代理模型计算近似适应度值,并对其中优秀解计算实际适应度值,从而提高进化效率。本发明能够有效地为待编译程序选择满足多目标(如运行速度、代码规模)的编译优化序列,并解决迭代过程中带来的计算代价约束问题。

Description

多目标编译优化序列选择的代理建模方法
技术领域
本发明属于编译器优化技术领域,涉及一种针对多目标编译优化序列选择中计算代价约束问题的代理建模方法。
背景技术
在实际开发过程中,编译之后的目标机器代码需要具有比较理想的性能,比如可执行代码规模小和执行速度快。然而,对于编译后的目标机器代码来说,代码规模和运行速度是具有一定冲突的优化目标。如果追求程序运行速度,将会使程序规模扩大。如果追求可执行代码规模更小,则会影响程序运行速度。因此,如何为待编译程序选择合适的编译优化序列使得其在代码规模和运行速度两个优化目标上得到一个权衡是一个关键问题。虽然编译器提供了一些预定义的标准编译优化序列(-O1、-O2、-O3、-Os等)。但是,对于同样的编译优化序列,由于待编译程序、编译环境以及编译目标的不同,编译器会产生不同优化效果的可执行代码。因此,针对不同的待编译程序,自适应的构造编译优化序列相对于标准优化序列具有更强的优势。
现代编译器提供了大量的编译优化选项,比如编译器GCC提供了超过200个编译优化选项,使用穷举搜索或者人工的方式在数量庞大的选项组合中选择最优的编译优化序列是不现实的。针对多目标编译优化序列选择,以非支配排序多目标遗传算法(NSGA-II)为代表的启发式搜索算法是一种比较典型的解决发明,其利用进化的思想为待编译程序搜索满足多目标的编译优化序列。但是,若将启发式搜索算法中多目标优化算法应用于编译优化序列选择,在此过程中由于需要对种群个体进行大量的适应度评价,实际应用时需要对待编译程序实际编译得到可执行代码,获取代码规模,另一个优化目标运行速度方面计算适应度值还需要实际运行该程序,这将会带来相当大的计算代价约束的问题。例如,在非支配排序多目标遗传算法中,每轮迭代过程中需要计算种群中每一个个体编码对应的编译优化序列的适应度值,即编译器需要使用每一条优化序列对待编译程序进行一次编译,并执行程序以获得其运行速度以及代码规模,这将使得算法的执行时间开销非常巨大,以此带来计算代价约束问题。
为了解决上述问题,本发明通过一种基于代理的非支配排序多目标遗传算法,在迭代搜索过程中构造编译优化序列与编译后可执行代码规模以及运行速度之间的代理模型,通过代理模型获取种群中个体对应的近似适应度值,只对其中部分优秀解计算实际适应度值,进而减少整个算法运行时间。
发明内容
本发明的目的是为多目标编译优化序列选择中计算代价约束问题提供了一种基于代理的非支配排序多目标遗传算法,其利用代理模型提高算法的进化效率。
为了达到上述目的,本发明采用的技术方案为:
一种多目标编译优化序列选择的代理建模方法,步骤如下:
步骤1:编码
使用二进制编码,即由{0,1}字符集产生的0,1字符串来表示编译优化序列;针对编译器GCC中二值型的编译优化选项(flag),即使用或者不使用该选项;在二进制编码字符串中,0表示不使用对应位置的优化选项,1表示使用对应位置的优化选项,例如编译优化序列“-fno-auto-inc-dec-fcompare-elim-fdce…-fno-defer-pop”编码为[0 1 1 … 0];因本发明针对编译器GCC的编译优化选项顺序对于最终编译构建结果没有影响,故使用固定顺序的二进制编码即可满足实际需求;同时二进制编码方式编码、解码操作简单易行,交叉等遗传操作便于实现,符合最小字符集编码原则。
步骤2:初始化种群
使用随机方法产生初始种群;因为编译器提供的编译优化选项众多、待编译程序多样、编译优化环境复杂多变等,无法找到比较合适的分布概率帮助提高初始化效率,故随机生成初始种群是一种相对合理的方式。
步骤3:构造适应度函数
针对编译后可执行代码的运行速度以及代码规模进行优化:若使用编译优化序列进行编译后得到的程序大小为Sizei,其运行速度为Speedi,未使用任何编译优化序列进行编译后得到的程序代码规模和运行速度分别为Size0、Speed0,则针对目标可执行代码规模的适应度函数为(Size0-Sizei)/Size0,针对目标可执行代码运行速度的适应度函数为Speedi/Speed0。进而得到初始化种群中,每个个体的适应度值。这样,若某一编译优化序列优化后代码规模越小或者运行速度越快,则其对应的适应度值将越大。
步骤4:构造代理模型数据集
随机初始化种群之后,对于种群中每一个个体编码对应的编译优化序列,使用这些编译优化序列编译程序,并执行编译后代码获取其运行速度值以及代码规模值;然后由这些编译优化序列对应的选项作为自变量,采用步骤3构造的两个适应度函数获得对应运行速度以及代码规模的适应度值,将其作为因变量,即编译优化序列选项为数据集中的特征值,运行速度以及代码规模对应的适应度值为数据集中的目标值。最终,构造得到用作训练代理模型的数据集。
步骤5:构造代理模型
针对运行速度和代码规模两个目标分别构造随机森林模型作为代理模型,具体为:首先,有放回的从步骤4构造的数据集中随机选择与种群规模大小一致的数据用来训练一个决策树,其次,在决策树的每个节点需要分裂时选择一个特征作为该节点的分裂特征,然后,决策树的形成过程中每个节点按照上一步来分裂,一直到不能再分裂为止,最后,按照上述步骤建立大量的决策树,这样就构成了随机森林。除此之外,在构造代理模型的过程中不仅可以采用随机森林模型,其它数学模型,包括支持向量机、Kriging模型等均可作为代理模型。
步骤6:快速非支配排序
根据种群中个体的非劣解对种群进行分层,这将使得搜索向Pareto最优解集方向进行,具体为:首先,找出种群中的非支配集,即第一非支配层,然后将第一非支配层中所有个体从整个种群中删除,继续从剩余种群中找到非支配解集,即第二非支配层,如此循环往复直至种群中所有个体都被分层,而同一分层内所有个体具有同样的非支配序值,进而将优秀解和非优秀解区分。
步骤7:进行选择、进化操作得到子种群
7.1):选择操作
选择的目的是把种群中优秀的个体直接遗传到下一代或者通过配对交叉产生新个体后遗传给下一代。
本发明采用竞标赛选择方式选择下一代个体,首先,从种群中随机选择两个个体(每个个体入选概率相同)构成一组;其次,根据每个个体的适应度值,选择其中适应度值最好的个体进入子代种群;最后,重复上述步骤直至构造好子种群。
上述选择方式中适应度值较高的个体被选择进入新种群的概率更大。
7.2)进化操作
本发明中进化操作为交叉操作,交叉操作是对种群中相互配对的个体按照一定方式交换部分基因,进而形成两个新的个体。
本发明使用单点交叉的方式进行交叉操作,即在种群中每个个体对应的二进制编码串中随机设置一个交叉点,然后交换两个配对个体的部分编码串,最终每个个体形成两个新的个体。
步骤8:采用代理模型计算步骤7得到的子种群的适应度值
采用运行速度和代码规模两个目标对应的代理模型计算经过选择、交叉后产生的新种群中所有个体的近似适应度值,针对新种群中的优秀解通过实际编译获取其实际适应度值。
步骤9:更新代理模型;
将新种群中优秀解的真实适应度值与原有种群所有编译优化序列优化效果数据合并,进而更新近似代理模型。
步骤10:产生下一代种群
将原种群与新种群合并,并对其进行快速非支配排序,从中选择效果更优(指适应度值高的优秀解)的个体组成下一代种群。
步骤11:判断是否达到迭代终止条件,即算法运行过程中实际适应度值计算次数到达指定次数。若达到了终止条件,则终止迭代;否则,转到步骤6,继续迭代过程。
步骤12:迭代终止,获得Pareto最优解集,从而获得待编译程序在代码规模和运行速度两个目标上合适的编译优化序列。
本发明的有益效果:本发明能够有效地为待编译程序选择合适的编译优化序列,使之在代码规模和运行速度两个优化目标上达到一定权衡。经选择、交叉产生新种群后使用代理模型获取的近似适应度值替换实际适应度值,减少实际程序编译次数,进而降低算法运行时间,提高算法运行效率。
附图说明
图1是多目标编译优化序列选择的代理建模方法主体流程。
具体实施方式
本发明部署在一台服务器上,根据编译优化序列选择问题需要安装所需的编译器。方法由编码程序、代理模型构造程序、进化操作程序、程序编译程序构成。
如图1所示,为待编译程序选择满足两个优化目标,即编译后可执行代码运行速度和代码规模的编译优化序列按如下流程进行。在搜索迭代过程中,除了编译环境中指定的确定因素,其他因素,比如种群规模、迭代终止条件、交叉算子等均根据具体情况进行设置。
步骤1:编码。使用二进制编码,即由{0,1}字符集产生的0,1字符串来表示编译优化序列;本发明针对编译器GCC中二值型的编译优化选项(flag),即使用或者不使用该选项;在二进制编码字符串中,0表示不使用对应位置的优化选项,1表示使用对应位置的优化选项。
步骤2:初始化种群。使用随机方法产生初始种群;因为编译器提供的编译优化选项众多、待编译程序多样、编译优化环境复杂多变等,无法找到比较合适的分布概率帮助提高初始化效率,故随机生成初始种群是一种相对合理的方式。
步骤3:适应度函数构造。本发明针对编译后可执行代码的运行速度以及代码规模进行优化,若使用编译优化序列进行编译后得到的程序大小为Sizei,其运行速度为Speedi,未使用任何编译优化序列进行编译后得到的程序代码规模和运行速度分别为Size0、Speed0则针对目标可执行代码规模的适应度函数为(Size0-Sizei)/Size0,针对目标可执行代码运行速度的适应度函数为Speedi/Speed0
步骤4:构造代理模型数据集。随机初始化种群之后,对于种群中每一个个体编码对应的编译优化序列,使用这些编译优化序列编译程序,并执行编译后代码获取其运行速度值以及代码规模值;采用步骤3构造的两个适应度函数获得对应运行速度以及代码规模的适应度值,即编译优化序列选项为数据集中的特征值,运行速度以及代码规模对应的适应度值为数据集中的目标值。如此,构造好可以用作训练代理模型的数据集。
步骤5:构造代理模型。针对运行速度和代码规模两个目标分别构造随机森林模型作为代理模型:首先,有放回的从步骤4构造的数据集中随机选择与种群规模大小一致的数据用来训练一个决策树,其次,在决策树的每个节点需要分裂时选择一个特征作为该节点的分裂特征,然后,决策树的形成过程中每个节点按照上一步来分裂,一直到不能再分裂为止,最后,按照上述步骤建立大量的决策树,这样就构成了随机森林。
步骤6:快速非支配排序。本发明中依据种群中个体的非劣解对种群进行分层,这将使得搜索向Pareto最优解集方向进行。首先,找出种群中的非支配集,即第一非支配层,然后将第一非支配层中所有个体从整个种群中删除,继续从剩余种群中找到非支配解集,即第二非支配层,如此循环往复直至种群中所有个体都被分层,而同一分层内所有个体具有同样的非支配序值。
步骤7:选择、进化操作。本发明使用竞标赛选择方式选择下一代个体,从种群中随机选择两个个体(每个个体入选概率相同)构成一组,根据每个个体的适应度值,选择其中适应度值最好的个体进入子代种群,重复上述步骤直至构成子种群。这种选择方式中适应度值较高的个体被选择进入新种群的概率更大。
本发明中进化操作为交叉运算;交叉操作是对种群中相互配对的个体按照一定方式交换部分基因,进而形成两个新的个体。本发明使用单点交叉的方式进行交叉操作,即在种群中个体对应的二进制编码串中随机设置一个交叉点,然后交换两个配对个体的部分编码串。
步骤8:采用代理模型计算步骤7得到的子种群的适应度值。采用运行速度和代码规模两个目标对应的代理模型计算经过选择、交叉后产生的新种群中所有个体的近似适应度值,针对其中的优秀解通过实际编译获取其实际适应度值。
步骤9:更新代理模型。将新种群中优秀解的真实适应度值与原有种群所有编译优化序列优化效果数据合并,进而更新近似代理模型。
步骤10:产生下一代种群。将原种群与新种群合并,并对其进行快速非支配排序,从中选择效果更优的个体组成下一代种群。
步骤11:判断是否达到迭代终止条件,即算法运行过程中实际适应度值计算次数到达指定次数。若达到了终止条件,则终止迭代;否则,转到步骤6,继续迭代过程。
步骤12:迭代终止,获得Pareto最优解集,从而获得待编译程序在代码规模和运行速度两个目标上合适的编译优化序列。
以上所述实施例仅表达本发明的实施方式,但并不能因此而理解为对本发明专利的范围的限制,应当指出,对于本领域的技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些均属于本发明的保护范围。

Claims (2)

1.一种多目标编译优化序列选择的代理建模方法,其特征在于,包括以下步骤:
步骤1:编码;
使用二进制编码来表示编译优化序列;针对编译器GCC中二值型的编译优化选项,在二进制编码字符串中,0表示不使用对应位置的优化选项,1表示使用对应位置的优化选项,采用固定顺序的二进制编码即可满足实际需求;
步骤2:采用随机方法产生初始种群;
步骤3:构造适应度函数;
针对编译后可执行代码的运行速度以及代码规模进行优化:若使用编译优化序列进行编译后得到的程序大小为Sizei,其运行速度为Speedi,未使用任何编译优化序列进行编译后得到的程序代码规模和运行速度分别为Size0、Speed0,则针对目标可执行代码规模的适应度函数为(Size0-Sizei)/Size0,针对目标可执行代码运行速度的适应度函数为Speedi/Speed0
步骤4:构造代理模型数据集
随机初始化种群之后,首先,对种群中每一个个体编码对应的编译优化序列,使用编译优化序列编译程序,并执行编译后代码获取其运行速度值以及代码规模值;然后,由编译优化序列对应的选项作为自变量,采用步骤3构造的两个适应度函数获得对应运行速度以及代码规模的适应度值,将其作为因变量,即编译优化序列选项为数据集中的特征值,运行速度以及代码规模对应的适应度值为数据集中的目标值;最终,构造得到用作训练代理模型的数据集;
步骤5:构造代理模型
针对运行速度和代码规模两个目标分别构造随机森林模型作为代理模型,具体为:5.1),有放回的从步骤4构造的数据集中随机选择与种群规模大小一致的数据用来训练一个决策树;5.2),在决策树的每个节点需要分裂时选择一个特征作为该节点的分裂特征;5.3),决策树的形成过程中每个节点按照上一步来分裂,一直到不能再分裂为止;最后,按照步骤5.1)-5.3)建立大量的决策树,构成得到随机森林;
步骤6:快速非支配排序
根据种群中个体的非劣解对种群进行分层,使搜索向Pareto最优解集方向进行,具体为:找出种群中的非支配解集,即第一非支配层;将第一非支配层中所有个体从整个种群中删除,继续从剩余种群中找到非支配解集,即第二非支配层;如此循环往复直至种群中所有个体都被分层,而同一分层内所有个体具有同样的非支配序值,进而区分优秀解和非优秀解;
步骤7:进行选择、进化操作得到子种群
7.1):选择操作
采用竞标赛选择方式选择下一代个体,7.1.1),从种群中随机选择两个个体构成一组;7.1.2),根据每个个体的适应度值,选择其中适应度值最好的个体进入子代种群;最后,重复7.1.1)-7.1.2)步骤直至构造好子种群;
7.2)进化操作
采用单点交叉的方式进行交叉操作,在种群中每个个体对应的二进制编码串中随机设置一个交叉点,然后交换两个配对个体的部分编码串,最终每个个体形成两个新的个体;
步骤8:采用代理模型计算新种群的近似适应度值
采用运行速度和代码规模两个目标对应的代理模型计算经过步骤7选择、交叉后产生的新种群中所有个体的近似适应度值,针对新种群中的优秀解通过实际编译获取其实际适应度值;
步骤9:更新代理模型;
将新种群中优秀解的实际适应度值与原有种群所有编译优化序列优化效果数据合并,进而更新代理模型;
步骤10:产生下一代种群
将原种群与新种群合并,并对其进行快速非支配排序,选择效果更优的个体组成下一代种群;
步骤11:判断是否达到迭代终止条件,即算法运行过程中实际适应度值计算次数到达指定次数;若达到了终止条件,则终止迭代;否则,转到步骤6,继续迭代过程;
步骤12:迭代终止,获得Pareto最优解集,进而获得待编译程序在代码规模和运行速度两个目标上合适的编译优化序列。
2.根据权利要求1所述的一种多目标编译优化序列选择的代理建模方法,其特征在于,所述步骤2中,在构造代理模型的过程中采用支持向量机或Kriging模型作为代理模型。
CN202010869346.0A 2020-08-26 2020-08-26 多目标编译优化序列选择的代理建模方法 Active CN112035116B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010869346.0A CN112035116B (zh) 2020-08-26 2020-08-26 多目标编译优化序列选择的代理建模方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010869346.0A CN112035116B (zh) 2020-08-26 2020-08-26 多目标编译优化序列选择的代理建模方法

Publications (2)

Publication Number Publication Date
CN112035116A CN112035116A (zh) 2020-12-04
CN112035116B true CN112035116B (zh) 2021-07-16

Family

ID=73581479

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010869346.0A Active CN112035116B (zh) 2020-08-26 2020-08-26 多目标编译优化序列选择的代理建模方法

Country Status (1)

Country Link
CN (1) CN112035116B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114594954A (zh) * 2020-12-07 2022-06-07 华为技术有限公司 一种代码优化方法、装置、计算设备及计算机存储介质
CN113407185B (zh) * 2021-03-10 2023-01-06 天津大学 基于贝叶斯优化的编译器优化选项推荐方法
CN113204349B (zh) * 2021-05-10 2023-02-03 西北大学 基于rl的超优化编译器建立、代码超优化方法及系统
CN113723790B (zh) * 2021-08-23 2024-06-07 中国地质大学(武汉) 基于代理模型的供水系统调度策略优化方法和存储介质
CN113553061B (zh) * 2021-09-22 2021-12-17 西安芯瞳半导体技术有限公司 一种提升源程序执行性能的方法、装置及计算机存储介质
CN114416105B (zh) * 2022-03-30 2022-06-24 北京中科弧光量子软件技术有限公司 一种量子操作的编译方法、系统、存储介质和电子设备
CN114968251B (zh) * 2022-04-18 2024-08-02 大连海事大学 一种Simulink到C语言的优化参数自动配置方法
CN115422663B (zh) * 2022-09-30 2023-04-18 中南大学 一种基于两阶段进化优化的汽车多胞结构吸能盒设计方法及系统
CN116521176B (zh) * 2023-05-06 2023-12-29 东莞理工学院 一种编译优化选项优化方法、装置、智能终端及存储介质
CN116860259B (zh) * 2023-09-05 2023-12-19 之江实验室 一种模型训练和编译器自动调优的方法、装置及设备
CN117130622B (zh) * 2023-10-26 2024-01-12 合肥综合性国家科学中心人工智能研究院(安徽省人工智能实验室) 一种分布式在线代码编译运行方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5450588A (en) * 1990-02-14 1995-09-12 International Business Machines Corporation Reducing pipeline delays in compilers by code hoisting
CN107886201A (zh) * 2017-11-29 2018-04-06 合肥工业大学 多无人机任务分配的多目标优化方法及装置
CN110321116A (zh) * 2019-06-17 2019-10-11 大连理工大学 一种面向编译优化中计算代价约束问题的高效优化方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5450588A (en) * 1990-02-14 1995-09-12 International Business Machines Corporation Reducing pipeline delays in compilers by code hoisting
CN107886201A (zh) * 2017-11-29 2018-04-06 合肥工业大学 多无人机任务分配的多目标优化方法及装置
CN110321116A (zh) * 2019-06-17 2019-10-11 大连理工大学 一种面向编译优化中计算代价约束问题的高效优化方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
A Clustering-Based Approach for Exploring Sequences of Compiler Optimizations;Luiz G. A. Martins 等;《2014 IEEE Congress on Evolutionary Computation (CEC)》;20140711;第2436-2443页 *
编译优化序列选择研究进展;高国军;《中国科学 : 信息科学》;20191231;第49卷(第 10 期);第1267-1282页 *

Also Published As

Publication number Publication date
CN112035116A (zh) 2020-12-04

Similar Documents

Publication Publication Date Title
CN112035116B (zh) 多目标编译优化序列选择的代理建模方法
CN108334949B (zh) 一种基于优化深度卷积神经网络结构快速进化的图像分类器构建方法
Walker et al. The automatic acquisition, evolution and reuse of modules in cartesian genetic programming
CN114186749B (zh) 基于强化学习及遗传算法的柔性车间调度方法及模型
CN110188785A (zh) 一种基于遗传算法的数据聚类分析方法
CN110321116B (zh) 一种面向编译优化中计算代价约束问题的高效优化方法
CN104866904A (zh) 一种基于spark的遗传算法优化的BP神经网络并行化方法
Wen et al. Learning ensemble of decision trees through multifactorial genetic programming
CN114064453B (zh) 基于聚类和进化算法的软件测试用例自动生成方法
CN104616062B (zh) 一种基于多目标遗传规划的非线性系统辨识方法
CN113222165A (zh) 一种基于遗传算法的量子线路优化方法
Kattan et al. Evolving radial basis function networks via gp for estimating fitness values using surrogate models
CN115469851A (zh) 一种编译器自动调参方法
CN115965169A (zh) 路径规划方法、智能设备及计算机可读存储介质
Eremeev On proportions of fit individuals in population of mutation-based evolutionary algorithm with tournament selection
CN111709526A (zh) 一种基于多因子迁移学习的多模多目标演化算法
CN102521654B (zh) Rna遗传算法的超临界水氧化反应动力学模型参数估计方法
CN106919504B (zh) 一种基于ga算法的测试数据进化生成方法
Becker et al. Predicting ordinary differential equations with transformers
CN108108554B (zh) 一种多材料车身装配顺序规划优化方法
CN103473599A (zh) 一种基于遗传算法和卡尔曼滤波的rbfn组合训练方法
Cristescu et al. Surrogate-based multiobjective optimization: ParEGO update and test
CN117273080A (zh) 一种基于进化算法的神经网络架构
KR20240141754A (ko) 분자의 특성을 예측하고 최적화하는 방법
Liu et al. An improved lion swarm optimization algorithm with chaotic mutation strategy and boundary mutation strategy for global optimization

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant