This Article 
 Bibliographic References 
 Add to: 
Fast, Centralized Detection and Resolution of Distributed Deadlocks in the Generalized Model
September 2004 (vol. 30 no. 9)
pp. 561-573
Soojung Lee, IEEE Computer Society
In the literature, only a few studies have been performed on the distributed deadlock detection and resolution problem in the generalized request model. Most of the studies are based on the diffusing computation technique where propagation of probes and backward propagation of replies are required to detect deadlock. The replies carry the dependency information between processes for the initiator of the algorithm to determine deadlock. Since fast detection of deadlock is critical, we take a centralized approach that removes the need of backward propagation of replies, but sends the dependency information directly to the initiator of the algorithm. This enables reduction of time cost for deadlock detection to half of that of the existing distributed algorithms. The algorithm is extended to handle concurrent executions in order to further improve deadlock detection time, whereas the current algorithms focus only on a single execution. Simulation experiments are performed to see the effectiveness of this centralized approach as compared to previous distributed algorithms. It is found that our algorithm shows better results in several performance metrics especially in deadlock latency and algorithm execution time.

[1] A. Boukerche and C. Tropper, A Distributed Graph Algorithm for the Detection of Local Cycles and Knots IEEE Trans. Parallel and Distributed Systems, vol. 9, no. 8, pp. 748-757, Aug. 1998.
[2] G. Bracha and S. Toueg, A Distributed Algorithm for Generalized Deadlock Detection Distributed Computing, vol. 2, pp. 127-138, 1987.
[3] J. Brzezinski, J.-M. Helary, M. Raynal, and M. Singhal, Deadlock Models and a General Algorithm for Distributed Deadlock Detection J. Parallel and Distributed Computing, vol. 31, no. 2, pp. 112-125, 1995.
[4] K.M. Chandy and L. Lamport, Distributed Snapshots: Determining Global States of Distributed Systems ACM Trans. Computer Systems, vol. 3, no. 1, pp. 63-75, Feb. 1985.
[5] S. Chen, Y. Deng, and P.C. Attie, Deadlock Detection and Resolution in Distributed Systems Based on Locally Constructed Wait-For Graphs technical report, School of Computer Science, Florida Int'l Univ., Aug. 1995.
[6] S. Chen, Y. Deng, P.C. Attie, and W. Sun, Optimal Deadlock Detection in Distributed Systems Based on Locally Constructed Wait-For Graphs Proc. Int'l Conf. Distributed Computing Systems, pp. 613-619, May 1996.
[7] E.W. Dijkstra and C.S. Scholten, Termination Detection for Diffusing Computations Information Processing Letters, vol. 11, no. 1, pp. 1-4, Aug. 1980.
[8] T. Herman and K.M. Chandy, A Distributed Procedure to Detect AND/OR Deadlocks Technical Report TR-LCS-8301, Univ. of Texas, Austin, Feb. 1983.
[9] R.C. Holt, Some Deadlock Properties of Computer Systems ACM Computing Surveys, vol. 4, pp. 179-195, Sept. 1972.
[10] Y.M. Kim, T.H. Lai, and N. Soundarajan, Efficient Distributed Deadlock Detection and Resolution Using Probes, Tokens, and Barriers Proc. Int'l Conf. Parallel and Distributed Systems, pp. 584-591, 1997.
[11] A.D. Kshemkalyani and M. Singhal, "Efficient Detection and Resolution of Generalized Distributed Deadlocks," IEEE Trans. Software Eng., vol. 20, no. 1, pp. 43-54, Jan. 1994.
[12] A.D. Kshemkalyani and M. Singhal, A One-Phase Algorithm to Detect Distributed Deadlocks in Replicated Databases IEEE Trans. Knowledge and Data Eng., vol. 11, no. 6, pp. 880-895, Nov. 1999.
[13] S. Lee and J.L. Kim, Performance Analysis of Distributed Deadlock Detection Algorithms IEEE Trans. Knowledge and Data Eng., vol. 13, no. 4, pp. 623-636, Aug. 2001.
[14] S. Lee, A Fast Algorithm for Detecting Distributed Deadlocks in the OR-Request Model Proc. Int'l Parallel and Distributed Processing Symp., Apr. 2001.
[15] D. Manivannan and M. Singhal, A Distributed Algorithm for Knot Detection in a Distributed Graph Proc. Int'l Conf. Parallel Processing, 2002.
[16] J.R. González de Mendívil, F. Farina, J.R. Garitagoitia, C.F. Alastruey, and J.M. Bernabeu-Auban, “A Distribued Deadlock Resolution Algorithm for the AND Model,” IEEE Trans. Parallel and Distributed Systems, vol. 10, no. 5, pp. 433-447, May 1999.
[17] W.K. Ng and C.V. Ravishankar, On-Line Detection and Resolution of Communication Deadlocks Proc. 27th Ann. Hawaii Int'l Conf. System Science, pp. 524-533, 1994.
[18] P. Rontogiannis, G. Pavlides, and A. Levy, Distributed Algorithm for Communication Deadlock Detection Information and Software Technology, vol. 33, no. 7, pp. 483-488, Sept. 1991.
[19] M. Singhal, “Deadlock Detection in Distributed Systems,” Computer, pp. 37-47, Nov. 1989.
[20] J. Villadangos, F. Farina, J.R. Mendivil, J. Garitagoitia, and A. Cordoba, A Safe Algorithm for Resolving OR Deadlocks IEEE Trans. Software Eng., vol. 29, no. 7, pp. 608-622, July 2003.
[21] J. Wang, S. Huang, and N. Chen, A Distributed Algorithm for Detecting Generalized Deadlocks technical report, Dept. of Computer Science, Nat'l Tsing-Hua Univ., 1990.

Index Terms:
Deadlock detection, deadlock resolution, distributed algorithms, distributed systems, wait-for graph.
Soojung Lee, "Fast, Centralized Detection and Resolution of Distributed Deadlocks in the Generalized Model," IEEE Transactions on Software Engineering, vol. 30, no. 9, pp. 561-573, Sept. 2004, doi:10.1109/TSE.2004.51
Usage of this product signifies your acceptance of the Terms of Use.