Scheduling of Time-Varying Workloads Using Reinforcement Learning
Keywords:Reinforcement Learning, Planning/Scheduling and Learning, Cloud
AbstractResource 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.
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
AAAI Technical Track on Machine Learning III