SOCRATES — A seamless online compiler and system runtime autotuning framework for energy-aware applications

Davide Gadioli, Ricardo Nobre, Pedro Pintó, Emanuele Vitali, Amir Hossein Ashouri, Gianluca Palermo, João M. P. Cardoso, Cristina Silvano · 2018

Configuring program parallelism and selecting optimal compiler options according to the underlying platform architecture is a difficult task. Tipically, this task is either assigned to the programmer or done by a standard one-fits-all policy generated by the compiler or runtime system. A runtime selection of the best configuration requires the insertion of a lot of glue code for profiling and runtime selection. This represents a programming wall for application developers. This paper presents a structured approach, called SOCRATES, based on an aspect-oriented language (LARA) and a runtime autotuner (mARGOt) to mitigate this problem. LARA has been used to hide the glue code insertion, thus separating the pure functional application description from extra-functional requirements. mARGOT has been used for the automatic selection of the best configuration according to the runtime evolution of the application.1

Read the paper · More papers on PaperTik