Abstract
Compiler optimizations are widely used to enhance the average case performance of software, and these techniques are very effective and advance with every compiler version. However, in realtime systems, it is the worst-case performance that matters. While there are techniques that aim at reducing the worst-case execution time (WCET), most of them are specific to certain targets and not implemented in mainstream compilers. In this paper, we present our ongoing work for a generic approach to harness the power of existing compiler optimizations for WCET reduction.Our approach is based on an existing compiler technology called Feedback-Directed Optimization (FDO), which can reduce the execution time of a program by making use of profiling data, and recently became popular due to major improvements. We first introduce a static analysis to efficiently compute a worst-case timing profile based on control flow dominators. During this analysis we perform a minimal number of automated calls to a WCET analyzer. The resulting profile contains basic block and branch execution counts, which then can be used in the regular FDO workflow. Preliminary results show that significant WCET reductions are possible, but depend on many factors that need more investigation.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have