Assessing the Performance Overhead of a Self-Adaptive System
Authors
Abstract
Self-adaptive systems continuously monitor runtime properties and analyze, plan and execute adaptation strategies to adjust their behavior in order to meet satisfactory quality levels. These systems have been applied to a wide variety of scenarios ranging from managing clusters to self-driving cars. However, such achievements require significant computational power, and there is no solid knowledge on which adaptation phases experience the higher consumption of resources. This is unfortunate, as only such insight can support a systematic optimization by improving tools, algorithms or technologies.In this paper we assess the performance of a reference model architecture for self-adaptive systems, the MAPE-K loop, identify bottlenecks, then suggest and implement some improvements. Finally, we present a performance comparison between different approaches including the one with our improvements and show the actual financial costs of deploying such systems in a mainstream cloud computing service (AWS). We show that our approach leads to a reduction of up to 45% on annual computational costs, without degradation on the quality of service provided.