Scheduling dependent coflows to minimize the total weighted job completion time in datacenters

Abstract Datacenter networks are critical to cloud computing. The coflow abstraction is a major leap forward of application-aware network scheduling. In the context of multi-stage jobs, there are dependencies among coflows. As a result, there is a large divergence between coflow-completion-time (CCT) and job-completion-time (JCT). To our best knowledge, this is the first work that systematically studies: how to schedule dependent coflows of multi-stage jobs, so that the total weighted job completion time can be minimized. We present a formal mathematical formulation. Inspired by the optimal solution of the relaxed linear programming, we design an algorithm that runs in polynomial time to solve this problem with an approximation ratio of ( 2 M + 1 ) in general case, and 3 in special case, where M is the number of hosts. Evaluation results demonstrate that, the largest gap between our algorithm and the lower bound is only 9.14%. In testbeds, we reduce the JCT by up to 81.65% comparing with pure DCTCP. In simulations, we reduce the average JCT by up to 33.48% comparing with Aalo, a heuristic multi-stage coflow scheduler; we reduce the total weighted JCT by up to 83.58% comparing with LP-OV-LS, the state-of-the-art approximation algorithm of coflow scheduling.

[1]  Amin Vahdat,et al.  Jupiter Rising: A Decade of Clos Topologies and Centralized Control in Google's Datacenter Network , 2015, Comput. Commun. Rev..

[2]  Michael J. Franklin,et al.  Resilient Distributed Datasets: A Fault-Tolerant Abstraction for In-Memory Cluster Computing , 2012, NSDI.

[3]  Albert G. Greenberg,et al.  Data center TCP (DCTCP) , 2010, SIGCOMM '10.

[4]  Ion Stoica,et al.  Efficient coflow scheduling with Varys , 2015, SIGCOMM.

[5]  Michael I. Jordan,et al.  Managing data transfers in computer clusters with orchestra , 2011, SIGCOMM 2011.

[6]  Joseph Y.-T. Leung,et al.  Order Scheduling in an Environment with Dedicated Resources in Parallel , 2005, J. Sched..

[7]  Hans Kellerer,et al.  Parallel dedicated machines scheduling with chain precedence constraints , 2012, Eur. J. Oper. Res..

[8]  Maurice Queyranne,et al.  Structure of a simple scheduling polyhedron , 1993, Math. Program..

[9]  Yoo-Ah Kim,et al.  Data migration to minimize the total completion time , 2005, J. Algorithms.

[10]  Hitesh Ballani,et al.  Decentralized task-aware scheduling for data center networks , 2015, SIGCOMM 2015.

[11]  Javad Ghaderi,et al.  An Improved Bound for Minimizing the Total Weighted Completion Time of Coflows in Datacenters , 2017, IEEE/ACM Transactions on Networking.

[12]  Javad Ghaderi,et al.  Brief Announcement: A New Improved Bound for Coflow Scheduling , 2017, SPAA.

[13]  Ion Stoica,et al.  Coflow: a networking abstraction for cluster applications , 2012, HotNets-XI.

[14]  Cheng-Shang Chang,et al.  Providing guaranteed rate services in the load balanced Birkhoff-von Neumann switches , 2006, IEEE/ACM Trans. Netw..

[15]  Muriel Médard,et al.  Extending the Birkhoff-von Neumann switching strategy for multicast - On the use of optical splitting in switches , 2007, IEEE Journal on Selected Areas in Communications.

[16]  Andreas S. Schulz Scheduling to Minimize Total Weighted Completion Time: Performance Guarantees of LP-Based Heuristics and Lower Bounds , 1996, IPCO.

[17]  Alfons Kemper,et al.  Locality-sensitive operators for parallel main-memory database clusters , 2014, 2014 IEEE 30th International Conference on Data Engineering.

[18]  Hong Liu,et al.  Jupiter Rising: A Decade of Clos Topologies and Centralized Control in Google's Datacenter Network , 2015, Comput. Commun. Rev..

[19]  Narendra Karmarkar,et al.  A new polynomial-time algorithm for linear programming , 1984, Comb..

[20]  Samir Khuller,et al.  Brief Announcement: Improved Approximation Algorithms for Scheduling Co-Flows , 2016, SPAA.

[21]  Chen Tian,et al.  Scheduling Cofiows of Multi-stage Jobs to Minimize the Total Weighted Job Completion Time , 2018, IEEE INFOCOM 2018 - IEEE Conference on Computer Communications.

[22]  Ion Stoica,et al.  Efficient Coflow Scheduling Without Prior Knowledge , 2015, SIGCOMM.

[23]  E.L. Lawler,et al.  Optimization and Approximation in Deterministic Sequencing and Scheduling: a Survey , 1977 .

[24]  Amin Vahdat,et al.  A scalable, commodity data center network architecture , 2008, SIGCOMM '08.

[25]  Albert G. Greenberg,et al.  VL2: a scalable and flexible data center network , 2009, SIGCOMM '09.

[26]  Yuan Zhong,et al.  Minimizing the Total Weighted Completion Time of Coflows in Datacenter Networks , 2015, SPAA.

[27]  Sanjay Ghemawat,et al.  MapReduce: Simplified Data Processing on Large Clusters , 2004, OSDI.

[28]  Marvin Marcus,et al.  DIAGONALS OF DOUBLY STOCHASTIC MATRICES , 1959 .

[29]  L. Khachiyan Polynomial algorithms in linear programming , 1980 .

[30]  Jipeng Zhou,et al.  Efficient online coflow routing and scheduling , 2016, MobiHoc.

[31]  Kai Chen,et al.  Stream: Decentralized opportunistic inter-coflow scheduling for datacenter networks , 2016, 2016 IEEE 24th International Conference on Network Protocols (ICNP).

[32]  David B. Shmoys,et al.  Scheduling to minimize average completion time: off-line and on-line algorithms , 1996, SODA '96.

[33]  Fanny Dufossé,et al.  Notes on Birkhoff-von Neumann decomposition of doubly stochastic matrices , 2016 .

[34]  Rajiv Gandhi,et al.  Improved bounds for scheduling conflicting jobs with minsum criteria , 2008, TALG.

[35]  Thomas A. Roemer,et al.  A note on the complexity of the concurrent open shop problem , 2006, J. Sched..

[36]  Sheng Wang,et al.  Towards Practical and Near-Optimal Coflow Scheduling for Data Center Networks , 2016, IEEE Transactions on Parallel and Distributed Systems.