Tiered Algorithm for Distributed Process Quiescence and Termination Detection

The Tiered Algorithm is presented for time-efficient and message-efficient detection of process termination. It employs a global invariant of equality between process production and consumption at each level of process nesting to detect termination, regardless of execution interleaving order and network transit time. Correctness is validated for arbitrary process launching hierarchies, including launch-in-transit hazards, where processes are created dynamically based on runtime conditions for remote execution. The performance of the Tiered Algorithm is compared to three existing schemes with comparable capabilities, namely, the Chandrasekaran and Venkatesan (CV), Lai, Tseng, and Dong (LTD), and Credit termination detection algorithms. For synchronization of X tasks terminating in E epochs of idle processing, the tiered algorithm is shown to incur O(E) message count complexity and O(T lg T) message bit complexity while incurring detection latency corresponding to only integer addition and comparison. The synchronization performance in terms of message overhead, detection operations, and storage requirements are evaluated and compared across numerous task creation and termination hierarchies.

[1]  Rhonda Kay Gaede,et al.  An Optical Bus-Based Distributed Dynamic Barrier Mechanism , 2000, IEEE Trans. Computers.

[2]  Hee Yong Youn,et al.  Four-Ary Tree-Based Barrier Synchronization for 2D Meshes without Nonmember Involvement , 2001, IEEE Trans. Computers.

[3]  S. P. Rana,et al.  A Distributed Solution of the Distributed Termination Problem , 1983, Inf. Process. Lett..

[4]  Jean Mayo,et al.  Distributed Termination Detection with Roughly Synchronized Clocks , 1994, Inf. Process. Lett..

[5]  Sathya Peri,et al.  Message-Optimal and Latency-Optimal Termination Detection Algorithms for Arbitrary Topologies , 2004, DISC.

[6]  Thomas W. Crockett,et al.  Parallel polygon rendering for message-passing architectures , 1994, IEEE Parallel & Distributed Technology: Systems & Applications.

[7]  Dhananjay M. Dhamdhere,et al.  Distributed Termination Detection for Dynamic Systems , 1997, Parallel Comput..

[8]  Ronald F. DeMara,et al.  Distributed-sum termination detection supporting multithreaded execution , 2003, Parallel Comput..

[9]  Niels Christian Juul,et al.  Comprehensive and Robust Garbage Collection in a Distributed System , 1992, IWMM.

[10]  Francis C. M. Lau,et al.  Efficient Termination Detection for Loosely Synchronous Applications in Multicomputers , 1996, IEEE Trans. Parallel Distributed Syst..

[11]  Tracy Camp,et al.  A taxonomy of distributed termination detection algorithms , 1998, J. Syst. Softw..

[12]  Mamoun Filali,et al.  Refinement Based Validation of an Algorithm for Detecting Distributed Termination , 2000, IPDPS Workshops.

[13]  Subbarayan Venkatesan,et al.  A Message-Optimal Algorithm for Distributed Termination Detection , 1990, J. Parallel Distributed Comput..

[14]  Shisheng Shang,et al.  Distributed Hardwired Barrier Synchronization for Scalable Multiprocessor Clusters , 1995, IEEE Trans. Parallel Distributed Syst..

[15]  Daniel Lehmann,et al.  Dynamic systems and their distributed termination , 1982, PODC '82.

[16]  Kenneth Drake Time and space efficient multiprocessor synchronization and quiescence detection , 1995 .

[17]  Susanne E. Hambrusch,et al.  Termination detection in data-driven parallel computations/applications , 2003, J. Parallel Distributed Comput..

[18]  K. Mani Chandy,et al.  Termination Detection of Diffusing Computations in Communicating Sequential Processes , 1982, TOPL.

[19]  Silvia A. Crivelli,et al.  An efficient parallel termination detection algorithm , 2006, Int. J. Parallel Emergent Distributed Syst..

[20]  Ivan Lavallée,et al.  A Fully Distributed (Minimal) Spanning Tree Algorithm , 1986, Inf. Process. Lett..

[21]  Maurice Herlihy,et al.  Timestamp-Based Orphan Elimination , 1989, IEEE Trans. Software Eng..

[22]  Jean Mayo,et al.  A general model for detecting distributed termination in dynamic systems , 2004, 18th International Parallel and Distributed Processing Symposium, 2004. Proceedings..

[23]  Jeff Matocha,et al.  Distributed termination detection in a mobile wireless network , 1998, ACM-SE 36.

[24]  Ronald F. DeMara,et al.  Barrier synchronization techniques for distributed process creation , 1994, Proceedings of 8th International Parallel Processing Symposium.

[25]  K. Mani Chandy,et al.  How processes learn , 1985, PODC '85.

[26]  Gerard Tel,et al.  The derivation of distributed termination detection algorithms from garbage collection schemes , 1991, TOPL.

[27]  Shantanu Dutt,et al.  An efficient delay-optimal distributed termination detection algorithm , 2007, J. Parallel Distributed Comput..

[28]  Ten-Hwang Lai,et al.  Termination Detection for Dynamically Distributed Systems with Non-first-in-first-out Communication , 1986, J. Parallel Distributed Comput..

[29]  Baker,et al.  An Efficient Parallel Termination Detection Algorithm ; CU-CS-915-01 , 2001 .

[30]  Edsger W. Dijkstra,et al.  Termination Detection for Diffusing Computations , 1980, Inf. Process. Lett..

[31]  B. Ramkumar,et al.  A dynamic and adaptive quiescence detection algorithmAmitabh , 1993 .

[32]  Friedemann Mattern,et al.  Algorithms for distributed termination detection , 1987, Distributed Computing.

[33]  Yu-Chee Tseng,et al.  A more efficient message-optimal algorithm for distributed termination detection , 1992, Proceedings Sixth International Parallel Processing Symposium.

[34]  Gideon Stupp,et al.  Stateless Termination Detection , 2002, DISC.

[35]  IEEE Transactions on Parallel and Distributed Systems, Vol. 13 , 2002 .

[36]  Friedemann Mattern,et al.  Global Quiescence Detection Based on Credit Distribution and Recovery , 1989, Inf. Process. Lett..

[37]  Devendra Kumar,et al.  Development of a Class of Distributed Termination Detection Algorithms , 1992, IEEE Trans. Knowl. Data Eng..

[38]  Liba Svobodova File servers for network-based distributed systems , 1984, CSUR.