[183643]
Title: Clustering Solutions of Multiobjective Function Inlining Problem. <em>In Proceedings of the 21st International Workshop on Worst-Case Execution Time Analysis (WCET)</em>
Written by: Kateryna Muts and Heiko Falk
in: July (2023).
Volume: Number:
on pages: 4:1-2:12
Chapter:
Editor:
Publisher:
Series:
Address: Vienna / Austria
Edition:
ISBN: 10.4230/OASIcs.WCET.2023.4
how published: 23-80 MF23 WCET
Organization:
School:
Institution:
Type:
DOI:
URL:
ARXIVID:
PMID:

Note: kmuts, hfalk, ESD, WCC

Abstract: Hard real time-systems are often small devices operating on batteries that must react within a given deadline, so they must satisfy their timing, code size, and energy consumption requirements. Since these three objectives contradict each other, compilers for real-time systems go towards multiobjective optimizations which result in sets of trade-off solutions. A system designer can use the solution sets to choose the most suitable system configuration. Evolutionary algorithms can find trade-off solutions but the solution set might be large which complicates the task of the system designer. We propose to divide the solution set into clusters, so the system designer chooses the most suitable cluster and examines a smaller subset in detail. In contrast to other clustering techniques, our method guarantees that the sizes of all clusters are less than a predefined limit. Our method clusters a set by using any existing clustering method, divides clusters with sizes exceeding the predefined size into smaller clusters, and reduces the number of clusters by merging small clusters. The method guarantees that the final clusters satisfy the size constraint. We demonstrate our approach by considering a well-known compiler-based optimization called function inlining. It substitutes function calls by the function bodies which decreases the execution time and energy consumption of a program but increases its code size.