Predicting Worst-Case Execution Times During Multi-criterial Function Inlining

Predicting Worst-Case Execution Times During Multi-criterial Function Inlining
复制标题

DOI:
10.1007/978-3-030-95467-3_21
复制
发表时间:
2021
影响因子:
3.6
通讯作者:
Kateryna Muts;H. Falk
Kateryna Muts;H. Falk
中科院分区:
物理与天体物理1区
文献类型:
--
作者:
Kateryna Muts;H. Falk

文献摘要

相似文献

在硬实时系统领域,最坏情况执行时间(WCET)是最重要的设计标准之一。由于涉及数据流、控制流和微架构分析,在静态 WCET 分析期间安全、准确地估计 WCET 对计算要求很高。这在将 WCET 与其他设计目标进行交换的多标准编译器优化领域变得至关重要。进化算法通常用于解决多目标优化问题,但它们需要对目标进行广泛的评估以探索问题的搜索空间。本文提出了一种利用机器学习构建代理模型的方法,以便快速预测 WCET,而不是使用静态 WCET 分析进行昂贵的估计。我们构建了一个独立于源代码和汇编代码功能的预测模型,因此编译器可以利用它来执行任何基于编译器的优化。我们展示了我们的模型在多标准函数内联上的有效性,我们的目标是探索 WCET、代码大小和编译时能耗之间的权衡。
In the domain of hard real-time systems, the Worst-Case Execution Time (WCET) is one of the most important design criteria. Safely and accurately estimating the WCET during a static WCET analysis is computationally demanding because of the involved data flow, control flow, and microarchitecture analyses. This becomes critical in the field of multi-criterial compiler optimizations that trade the WCET with other design objectives. Evolutionary algorithms are typically exploited to solve a multi-objective optimization problem, but they require an extensive evaluation of the objectives to explore the search space of the problem. This paper proposes a method that utilizes machine learning to build a surrogate model in order to quickly predict the WCET instead of costly estimating it using static WCET analysis. We build a prediction model that is independent of the source code and assembly code features, so a compiler can utilize it to perform any compiler-based optimization. We demonstrate the effectiveness of our model on multi-criterial function inlining, where we aim to explore trade-offs between the WCET, code size, and energy consumption at compile time.