A Predictive Autoscaler for Elastic Batch Jobs
This addresses resource management and cost-efficiency for cloud users running batch jobs, but it appears incremental as it builds on existing autoscaling and prediction techniques.
The paper tackles the problem of scaling computational resources for large batch jobs like Deep Learning and HPC in cloud environments, proposing a predictive autoscaler that uses regression models to overprovision instances, with results showing it relieves scaling burdens, avoids long launching times at lower cost, and outperforms other prediction methods.
Large batch jobs such as Deep Learning, HPC and Spark require far more computational resources and higher cost than conventional online service. Like the processing of other time series data, these jobs possess a variety of characteristics such as trend, burst, and seasonality. Cloud providers offer short-term instances to achieve scalability, stability, and cost-efficiency. Given the time lag caused by joining into the cluster and initialization, crowded workloads may lead to a violation in the scheduling system. Based on the assumption that there are infinite resources and ideal placements available for users to require in the cloud environment, we propose a predictive autoscaler to provide an elastic interface for the customers and overprovision instances based on the trained regression model. We contribute to a method to embed heterogeneous resource requirements in continuous space into discrete resource buckets and an autoscaler to do predictive expand plans on the time series of resource bucket counts. Our experimental evaluation of the production resources usage data validates the solution and the results show that the predictive autoscaler relieves the burden of making scaling plans, avoids long launching time at lower cost and outperforms other prediction methods with fine-tuned settings.