Real-time systems usually face stringent constraints such as execution time, energy consumption, code-size, etc. Performing multi-objective optimization at compile time is one way to find approximations over the possible solutions which fulfill these constraints. Flower pollination algorithm (FPA) is a relatively recently proposed metaheuristic algorithm which makes use of the evolutionary characteristics of flower pollination process to find solutions to an optimization problem. In this paper, we propose a theoretical framework for an extension for the WCET-Aware C Compiler (WCC) framework [2] for performing multi-objective optimizations based on the FPA during compile time.
Worst-Case Execution Time (WCET) is the most important design criterion in the domain of hard real-time systems. Most embedded systems also need to satisfy additional design criteria like, e.g., energy consumption. Performing WCET and energy analyses statically at compile-time can be time-consuming. Consequently, minimizing WCET and energy consumption of the code at the compiler level using multi-objective optimization can be a timeconsuming process. In this paper, we propose an approximation model to quickly approximate the WCET and energy consumption of the code at compile-time. Instead of using traditional WCET and energy analyses, we exploit this approximation model to perform ScratchPad Memory (SPM) allocation-based multiobjective optimization. Furthermore, we solve the multi-objective optimization problem using metaheuristic algorithms and explore the trade-offs between WCET and energy consumption. Using the proposed approximation model, we achieved, on average, a 94.12% reduction in compilation time and maintained the quality of the Pareto optimal solutions while performing the multi-objective optimization. Furthermore, the approximation error while using the proposed approximation model was in an acceptable range of 2% -4% on average.
CCS CONCEPTS• Computer systems organization → Embedded systems; • Software and its engineering → Compilers; • Computing methodologies → Modeling methodologies; • Mathematics of computing → Discrete optimization.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.