MLComp: A Methodology for Machine Learning-based Performance Estimation and Adaptive Selection of Pareto-Optimal Compiler Optimization Sequences
Embedded systems have proliferated in various consumer and industrial applications with the evolution of Cyber-Physical Systems and the Internet of Things. These systems are subjected to stringent constraints so that embedded software must be optimized for multiple objectives simultaneously, namely reduced energy consumption, execution time, and code size. Compilers offer optimization phases to improve these metrics. However, proper selection and ordering of them depends on multiple factors and typically requires expert knowledge. State-of-the-art optimizers facilitate different platforms and applications case by case, and they are limited by optimizing one metric at a time, as well as requiring a time-consuming adaptation for different targets through dynamic profiling. To address these problems, we propose the novel MLComp methodology, in which optimization phases are sequenced by a Reinforcement Learning-based policy. Training of the policy is supported by Machine Learning-based analytical models for quick performance estimation, thereby drastically reducing the time spent for dynamic profiling. In our framework, different Machine Learning models are automatically tested to choose the best-fitting one. The trained Performance Estimator model is leveraged to efficiently devise Reinforcement Learning-based multi-objective policies for creating quasi-optimal phase sequences. Compared to state-of-the-art estimation models, our Performance Estimator model achieves lower relative error (<2%) with up to 50x faster training time over multiple platforms and application domains. Our Phase Selection Policy improves execution time and energy consumption of a given code by up to 12% and 6%, respectively. The Performance Estimator and the Phase Selection Policy can be trained efficiently for any target platform and application domain.
Code (0)
등록된 구현이 없습니다.
Tasks
Compiler Optimizationreinforcement-learningReinforcement Learning (RL)Similar Papers 제목 키워드 기반
CMLCompiler: A Unified Compiler for Classical Machine Learning
Classical machine learning (CML) occupies nearly half of machine learning pipelines in production applications. Unfortunately, it fails to utilize the state-of-the-practice devices fully and performs poorly. Without a un…
CPUGPURobust Observer Based Methodology for Frequency and Rate of Change of Frequency Estimation in Power Systems
An observer based adaptive detection methodology (ADM) is proposed for estimating frequency and its rate of change (RoCoF) of the voltage and/or current measurements acquired from an instrument transformer. With guarante…
New Class K_infinity Function-Based Adaptive Sliding Mode Control Design
To reduce the chattering and overestimation phenomena existing in classical adaptive sliding mode control, this paper presents a new class K_infinity function-based adaptive sliding mode control scheme. Two controllers a…
Experimental Phase Estimation Enhanced By Machine Learning
Phase estimation protocols provide a fundamental benchmark for the field of quantum metrology. The latter represents one of the most relevant applications of quantum theory, potentially enabling the capability of measuri…
BIG-bench Machine LearningOracle Efficient Estimation of Structural Breaks in Cointegrating Regressions
In this paper, we propose an adaptive group lasso procedure to efficiently estimate structural breaks in cointegrating regressions. It is well-known that the group lasso estimator is not simultaneously estimation consist…
Model Selection