Web servers scaled across distributed systems necessitate complex runtime controls for providing quality of service (QoS) guarantees as well as minimizing the energy costs under dynamic workloads. This paper presents a QoS-aware runtime controller using horizontal scaling (node allocation) and vertical scaling (resource allocation within nodes) methods synergistically to provide adaptation to workloads while minimizing the power consumption under QoS constraint (i.e., response time). A horizontal scaling determines the number of active nodes based on workload demands and the required QoS according to a set of rules. Then, it is coupled with vertical scaling using transfer Q-learning, which further tunes power/performance based on workload profile using dynamic voltage/frequency scaling (DVFS). It transfers Q-values within minimally explored states reducing exploration requirements. In addition, the approach exploits a scalable architecture of the many-core server allowing to reuse available knowledge from fully or partially explored nodes. When combined, these methods allow to reduce the exploration time and QoS violations when compared to model-free Q-learning. The technique balances design-time and runtime costs to maximize the portability and operational optimality demonstrated through persistent power reductions with minimal QoS violations under different workload scenarios on heterogeneous multi-processing nodes of a server cluster.
翻译:横跨分布式系统的网络服务器需要复杂的运行时间控制,以提供优质服务(QOS)保障,并在动态工作量中最大限度地减少能源成本。本文展示了使用横向比例(节点分配)和垂直比例(节点内的资源分配)方法的快速运行时间控制器,以协同配合方式适应工作量,同时根据QOS限制(即反应时间)最大限度地减少电力消耗。横向规模决定了基于工作量需求和根据一套规则要求的快速运行节点的数量。然后,在使用转移Q学习的同时,通过垂直扩展,利用动态电压/频率比例(DVFS)进一步调整基于工作量配置的快速运行时间控制器/性能。它转移了最小探索范围内的量化价值,以减少勘探需求。此外,该方法利用了多种核心服务器的可扩展结构,以便根据完全或部分探索节点重新利用现有知识。当结合这些方法时,可以减少探索时间和QOS违规现象,而与无模式学习。技术平衡了在动态压力/频率缩放模式下,通过最低程度的机舱压式机舱压压下,以最大程度降低机能率。