Parallel I/O scheduling using randomized, distributed edge coloring algorithms

A growing imbalance in CPU and I/O speeds has led to a communications bottleneck in distributed architectures, especially for data-intensive applications such as multimedia information systems, databases, and Grand Challenge problems. Our solution is to schedule parallel I/O operations explicitly. We present a class of decentralized scheduling algorithms that eliminate contention for I/O ports while maintaining an efficient use of bandwidth. These algorithms, based on edge-coloring and matching of bipartite graphs, rely upon simple heuristics to obtain shorter schedules. We use simulation to evaluate the ability of our algorithms to obtain near optimal solutions in a distributed context, and compare our work with that of other researchers. Our results show that our algorithms produce schedules within 5% of the optimal schedule, a substantial improvement over existing algorithms.

[1]  Leslie Ann Goldberg,et al.  An Ω(√ log log n) lower bound for routing in optical networks , 1994, SPAA '94.

[2]  Leslie G. Valiant,et al.  General Purpose Parallel Architectures , 1991, Handbook of Theoretical Computer Science, Volume A: Algorithms and Complexity.

[3]  Rajmohan Rajaraman,et al.  On contention resolution protocols and associated probabilistic phenomena , 1994, STOC '94.

[4]  Frank Thomson Leighton,et al.  A doubly logarithmic communication algorithm for the completely connected optical communication parallel computer , 1993, SPAA '93.

[5]  Aravind Srinivasan,et al.  Randomized Distributed Edge Coloring via an Extension of the Chernoff-Hoeffding Bounds , 1997, SIAM J. Comput..

[6]  Ravi Jain,et al.  Input/Output in Parallel and Distributed Computer Systems , 2011 .

[7]  Thanasis Tsantilas,et al.  Efficient optical communication in parallel computers , 1992, SPAA '92.

[8]  Thomas E. Anderson,et al.  High-speed switch scheduling for local-area networks , 1993, TOCS.

[9]  Ravi Jain,et al.  Applying randomized edge coloring algorithms to distributed communication: an experimental study , 1995, SPAA '95.

[10]  J. Van Leeuwen,et al.  Handbook of theoretical computer science - Part A: Algorithms and complexity; Part B: Formal models and semantics , 1990 .

[11]  Alessandro Panconesi,et al.  Near-Optimal, Distributed Edge Colouring via the Nibble Method , 1996, Theor. Comput. Sci..

[12]  Ravi Jain,et al.  Heuristics for Scheduling I/O Operations , 1997, IEEE Trans. Parallel Distributed Syst..

[13]  Ravi Jain Scheduling data transfers in parallel computers and communications systems , 1992 .

[14]  Alessandro Panconesi,et al.  Nearly optimal distributed edge colouring in O(log log n) rounds , 1997, SODA '97.

[15]  Alessandro Panconesi,et al.  Near-Optimal Distributed Edge Coloring , 1995, ESA.

[16]  Aravind Srinivasan,et al.  Fast randomized algorithms for distributed edge coloring , 1992, PODC '92.

[17]  Ravi Jain,et al.  Distributed scheduling algorithms to improve the performance of parallel data transfers , 1994, CARN.

[18]  Ravi Jain,et al.  Scheduling Parallel I/O Operations in Multiple Bus Systems , 1992, J. Parallel Distributed Comput..