Multi-task Deep Reinforcement Learning for Scalable Parallel Task Scheduling

The rapid development of artificial intelligence in multiple scenarios, including machine learning, image recognition, and autonomous driving, has led to an explosion of computation jobs. These jobs are often divided into parallel child tasks and executed in distributed clusters with limited computing resources, making parallel task scheduling one of the most important research topics nowadays. Most studies about parallel task scheduling focused on formulating special scenarios and service requirements as optimization problems. However, the complicated and dynamic parallel computing environments are hard to model, predict and control, making those previous methods unscalable and unable to reflect the real scenarios. In this paper, a Multi-task Deep reinforcement learning approach for scalable parallel Task Scheduling (MDTS) is firstly devised. Generally, Deep Reinforcement Learning (DRL) is a model-free optimization algorithm for long-term control by leveraging experience, but it suffers the curse of dimensionality for decision when coping with complex parallel computing environments and jobs with diverse properties. We extend the action selection in DRL to a multi-task decision, where the output branches of multitask learning are fine-matched to parallel scheduling tasks. Child tasks of a job are accordingly assigned to distributed nodes without any human knowledge while the resource competition among parallel tasks is leveraged through shared neural network layers. Extensive experiments show that the MDTS significantly reduces the job execution time compared with least-connection scheduling and particle swarm optimization algorithm by 15.3% and 39.8% respectively. Moreover, MDTS outperforms the raw DRL algorithm on job execution time, load imbalance value, and total cost by 42.8%, 47.5%, and 59.0%.

[1]  Ji Li,et al.  DRL-cloud: Deep reinforcement learning-based resource provisioning and task scheduling for cloud service providers , 2018, 2018 23rd Asia and South Pacific Design Automation Conference (ASP-DAC).

[2]  Xiao Qin,et al.  An Availability-Aware Task Scheduling Strategy for Heterogeneous Systems , 2008, IEEE Transactions on Computers.

[3]  Meikang Qiu,et al.  Online optimization for scheduling preemptable tasks on IaaS cloud systems , 2012, J. Parallel Distributed Comput..

[4]  Shane Legg,et al.  Human-level control through deep reinforcement learning , 2015, Nature.

[5]  Risat Pathan,et al.  Scheduling Parallel Real-Time Recurrent Tasks on Multicore Platforms , 2018, IEEE Transactions on Parallel and Distributed Systems.

[6]  Tulika Mitra,et al.  Task Scheduling on Adaptive Multi-Core , 2014, IEEE Transactions on Computers.

[7]  Valentin Cristea,et al.  Reputation Guided Genetic Scheduling Algorithm for Independent Tasks in Inter-clouds Environments , 2013, 2013 27th International Conference on Advanced Information Networking and Applications Workshops.

[8]  Medhat A. Tawfeek,et al.  Cloud task scheduling based on ant colony optimization , 2013, 2013 8th International Conference on Computer Engineering & Systems (ICCES).

[9]  Randy H. Katz,et al.  A view of cloud computing , 2010, CACM.

[10]  Geoffrey C. Fox,et al.  Cloud computing paradigms for pleasingly parallel biomedical applications , 2010, HPDC '10.

[11]  Henri Casanova,et al.  Scheduling Parallel Task Graphs on (Almost) Homogeneous Multicluster Platforms , 2009, IEEE Transactions on Parallel and Distributed Systems.

[12]  Yang Wang,et al.  Adaptive Scheduling of Task Graphs with Dynamic Resilience , 2017, IEEE Transactions on Computers.

[13]  Wei Tan,et al.  Self-Adaptive Learning PSO-Based Deadline Constrained Task Scheduling for Hybrid IaaS Cloud , 2014, IEEE Transactions on Automation Science and Engineering.

[14]  Svetlana Lazebnik,et al.  Active Object Localization with Deep Reinforcement Learning , 2015, 2015 IEEE International Conference on Computer Vision (ICCV).

[15]  Ji Li,et al.  DSCNN: Hardware-oriented optimization for Stochastic Computing based Deep Convolutional Neural Networks , 2016, 2016 IEEE 34th International Conference on Computer Design (ICCD).

[16]  Marcin Andrychowicz,et al.  Learning to learn by gradient descent by gradient descent , 2016, NIPS.

[17]  Zhijun Ding,et al.  A task scheduling strategy based on weighted round robin for distributed crawler , 2016, Concurr. Comput. Pract. Exp..

[18]  Traian Rebedea,et al.  Playing Atari Games with Deep Reinforcement Learning and Human Checkpoint Replay , 2016, ArXiv.

[19]  Safia Kedad-Sidhoum,et al.  Scheduling Independent Moldable Tasks on Multi-Cores with GPUs , 2017, IEEE Transactions on Parallel and Distributed Systems.

[20]  Minming Li,et al.  Energy Optimal Task Scheduling with Normally-Off Local Memory and Sleep-Aware Shared Memory with Access Conflict , 2018, IEEE Transactions on Computers.

[21]  Massoud Pedram,et al.  A Reinforcement Learning-Based Power Management Framework for Green Computing Data Centers , 2016, 2016 IEEE International Conference on Cloud Engineering (IC2E).

[22]  Sergey Levine,et al.  Continuous Deep Q-Learning with Model-based Acceleration , 2016, ICML.

[23]  Alex Graves,et al.  Playing Atari with Deep Reinforcement Learning , 2013, ArXiv.

[24]  Qinru Qiu,et al.  A Hierarchical Framework of Cloud Resource Allocation and Power Management Using Deep Reinforcement Learning , 2017, 2017 IEEE 37th International Conference on Distributed Computing Systems (ICDCS).

[25]  Alex Graves,et al.  Asynchronous Methods for Deep Reinforcement Learning , 2016, ICML.

[26]  Zhu Han,et al.  User Scheduling and Resource Allocation in HetNets With Hybrid Energy Supply: An Actor-Critic Reinforcement Learning Approach , 2018, IEEE Transactions on Wireless Communications.

[27]  Jun Zhang,et al.  Cloud Computing Resource Scheduling and a Survey of Its Evolutionary Approaches , 2015, ACM Comput. Surv..

[28]  Enda Barrett,et al.  Applying reinforcement learning towards automating resource allocation and application scalability in the cloud , 2013, Concurr. Comput. Pract. Exp..

[29]  Kenli Li,et al.  A Novel Security-Driven Scheduling Algorithm for Precedence-Constrained Tasks in Heterogeneous Distributed Systems , 2011, IEEE Transactions on Computers.

[30]  S. Devipriya,et al.  Improved Max-min heuristic model for task scheduling in cloud , 2013, 2013 International Conference on Green Computing, Communication and Conservation of Energy (ICGCE).

[31]  Srikanth Kandula,et al.  Resource Management with Deep Reinforcement Learning , 2016, HotNets.

[32]  Jin Gon Shon,et al.  An Improvement on the Weighted Least-Connection Scheduling Algorithm for Load Balancing in Web Cluster Systems , 2010, FGIT-GDC/CA.

[33]  Song Guo,et al.  Joint Optimization of Task Scheduling and Image Placement in Fog Computing Supported Software-Defined Embedded System , 2016, IEEE Transactions on Computers.

[34]  Dongrui Fan,et al.  An Evolutionary Technique for Performance-Energy-Temperature Optimized Scheduling of Parallel Tasks on Multi-Core Processors , 2016, IEEE Transactions on Parallel and Distributed Systems.