论文标题
高度配置软件系统的自动性性能调整
Automated Performance Tuning for Highly-Configurable Software Systems
论文作者
论文摘要
性能是软件需求的重要非功能性方面。现代软件系统具有高度配置,并且配置错误可能很容易引起性能问题。遭受性能问题的软件系统可能会表现出较低的程序吞吐量和较长的响应时间。但是,配置空间的庞大尺寸使管理员手动选择和调整配置选项以实现更好的性能而具有挑战性。在本文中,我们提出了concrl,这是一种自动调整软件性能的方法。 Concrl的关键思想是使用加强学习通过试用和错误方法探索配置空间,并将从环境收到的反馈来调整配置选项值以实现更好的性能。为了降低强化学习的成本,Concrl采用抽样,聚类和动态状态减少技术,以使状态保持较大的配置空间。我们对四个现实世界高度可配置的服务器程序的评估表明,Confrl可以有效地指导软件系统以实现更高的长期性能。
Performance is an important non-functional aspect of the software requirement. Modern software systems are highly-configurable and misconfigurations may easily cause performance issues. A software system that suffers performance issues may exhibit low program throughput and long response time. However, the sheer size of the configuration space makes it challenging for administrators to manually select and adjust the configuration options to achieve better performance. In this paper, we propose ConfRL, an approach to tune software performance automatically. The key idea of ConfRL is to use reinforcement learning to explore the configuration space by a trial-and-error approach and to use the feedback received from the environment to tune configuration option values to achieve better performance. To reduce the cost of reinforcement learning, ConfRL employs sampling, clustering, and dynamic state reduction techniques to keep states in a large configuration space manageable. Our evaluation of four real-world highly-configurable server programs shows that ConfRL can efficiently and effectively guide software systems to achieve higher long-term performance.