{"title":"Optimizing Worst-Case Execution Times Using Mainstream Compilers","authors":"M. Becker, S. Chakraborty","doi":"10.1145/3207719.3207739","DOIUrl":null,"url":null,"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.","PeriodicalId":284835,"journal":{"name":"Proceedings of the 21st International Workshop on Software and Compilers for Embedded Systems","volume":"1 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2018-05-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 21st International Workshop on Software and Compilers for Embedded Systems","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3207719.3207739","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 2
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.