Scheduling of Time-Varying Workloads Using Reinforcement Learning

Authors

  • Shanka Subhra Mondal Princeton University
  • Nikhil Sheoran Adobe Research
  • Subrata Mitra Adobe Research

Keywords:

Reinforcement Learning, Planning/Scheduling and Learning, Cloud

Abstract

Resource usage of production workloads running on shared compute clusters often fluctuate significantly across time. While simultaneous spike in the resource usage between two workloads running on the same machine can create performance degradation, unused resources in a machine results in wastage and undesirable operational characteristics for a compute cluster. Prior works did not consider such temporal resource fluctuations or their alignment for scheduling decisions. Due to the variety of time-varying workloads, their complex resource usage characteristics, it is challenging to design well-defined heuristics for scheduling them optimally across different machines in a cluster. In this paper, we propose a Deep Reinforcement Learning (DRL) based approach to exploit various temporal resource usage patterns of time varying workloads as well as a technique for creating equivalence classes among a large number of production workloads to improve scalability of our method. Validations with real production traces from Google and Alibaba show that our technique can significantly improve metrics for operational excellence (e.g. utilization, fragmentation, resource exhaustion etc.) for a cluster, compared to the baselines.

Downloads

Published

2021-05-18

How to Cite

Mondal, S. S., Sheoran, N., & Mitra, S. (2021). Scheduling of Time-Varying Workloads Using Reinforcement Learning. Proceedings of the AAAI Conference on Artificial Intelligence, 35(10), 9000-9008. Retrieved from https://ojs.aaai.org/index.php/AAAI/article/view/17088

Issue

Section

AAAI Technical Track on Machine Learning III