|Title: Compiling for the Worst Case: Memory Allocation for Multi-task and Multi-core Hard Real-time Systems.|
|Written by: Arno Luppold, Dominic Oehlert and Heiko Falk|
|in: <em>ACM Transactions on Embedded Computing Systems (TECS)</em>. March (2020).|
|Volume: <strong>19</strong>. Number: (2),|
|how published: 20-95 LOF20 TECS|
Note: aluppold, doehlert, hfalk, ESD, multiopt, teamplay, WCC
Abstract: Modern embedded hard real-time systems feature multiple tasks running on multiple processing cores. Schedulability analysis of such systems is usually performed on an abstract system level with each task being represented as a black box with fixed timing properties. If timing constraints are violated, optimizing the system on a code-level in order to achieve schedulability is a tedious task. To tackle this issue, we propose an extension to the WCET-Aware C Compiler framework WCC. We integrated an optimization framework based on Integer-Linear Programming into the WCC which is able to optimize a multi-core system with multiple tasks running on each core with regards to its schedulability. We evaluate the framework by providing two approaches on a schedulability aware static Scratchpad Memory (SPM) allocation: One based on Integer-Linear Programming (ILP) and one based on a genetic algorithm.