Prediction-Guided Performance-Energy Trade-Off With Continuous Run-Time Adaptation
Recent work has demonstrated that prediction-guided DVFS control can significantly improve the energy efficiency of interactive applications with little to no impact on user experience when running in isolation. In this thesis, I propose to add an on-line learning capability to the execution-time predictor, which enables the predictor to automatically adapt to changes in the environment such as interference from other applications and be easily applied across diverse platforms. This thesis introduces several techniques to address the overhead of performing on-line learning, including incremental training based on QR decomposition and explicit change detection for fast adaptation. In addition to the DVFS control, I show that the proposed prediction model can be used to intelligently select a core in a heterogeneous system. Experimental results on the ARM big.LITTLE platform show that the DVFS controller and core scheduler can effectively remove deadline misses even under significant interference from competing processes while consuming significantly lower energy compared to traditional schemes.