This Article 
 Bibliographic References 
 Add to: 
On Optimal Deadlock Detection Scheduling
September 2006 (vol. 55 no. 9)
pp. 1178-1187
Deadlock detection scheduling is an important, yet often overlooked problem that can significantly affect the overall performance of deadlock handling. Excessive initiation of deadlock detection increases overall message usage, resulting in degraded system performance in the absence of deadlocks, while insufficient initiation of deadlock detection increases the deadlock persistence time, resulting in an increased deadlock resolution cost in the presence of deadlocks. The investigation of this performance trade-off, however, is missing in the literature. This paper studies the impact of deadlock detection scheduling on the overall performance of deadlock handling. In particular, we show that there exists an optimal deadlock detection frequency that yields the minimum long-run mean average cost, which is determined by the message complexities of the deadlock detection and resolution algorithms being used, as well as the rate of deadlock formation, denoted as \lambda. For the best known deadlock detection and resolution algorithms, we show that the asymptotically optimal frequency of deadlock detection scheduling that minimizes the overall message overhead is {\cal O}((\lambda n)^{1/3}) when the total number n of processes is sufficiently large. Furthermore, we show that, in general, fully distributed (uncoordinated) deadlock detection scheduling cannot be performed as efficiently as centralized (coordinated) deadlock detection scheduling.

[1] R. Baldoni and S. Salz, “Deadlock Detection in Multidatabase Systems: A Performance Analysis,” DIstributed Systems Eng., vol. 4, pp. 244-252, Dec. 1997.
[2] 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.
[3] G. Bracha and S. Toueg, “Distributed Deadlock Detection,” Distributed Computing, vol. 2, pp. 127-138, 1987.
[4] K.M. Chandy, J. Misra, and L. Hass, “Distributed Deadlock,” ACM Trans. Computer Systems, vol. 1, no. 2, pp. 144-156, May 1983.
[5] S. Chen, Y. Deng, and W. Sun, “Optimal Dealock Detection in Distributed Systems Based on Locally Constructed Wait-For Graph,” Proc. 16th Int'l Conf. Distributed Computing Systems, pp.613-619, 1996.
[6] S. Chen and Y. Ling, “Stochastic Analysis of Distributed Deadlock Scheduling,” Proc. 24th ACM Symp. Principles of Distributed Computing, pp. 265-273, July 2005.
[7] J.R. Gonzales de Mendivil, J.R. Garitagoitia, C.F. Alastruey, and J.M. Bernabeu-Auban, “A Distributed Deadlock Resolution Algorithm for the AND Model,” IEEE Trans. Parallel and Distributed Systems, vol. 10, no. 5, pp. 433-447, May 1999.
[8] J. Gray, P. Homan, R. Obermarck, and H. Korth, “A Straw-Man Analysis of the Probability of Waiting and Deadlock in a Database System,” IBM Research, RJ3066, Feb. 1981.
[9] 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.
[10] E. Knapp, “Deadlock Detection in Distributed Databases,” ACM Computing Surveys, vol. 19, no. 4, pp. 303-328, 1987.
[11] N. Krivokapic, A. Kemper, and E. Gudes, “Deadlock Detection in Distributed Database Systems: A New Algorithm and a Comparative Performance Analysis,” VLDB J.: Very Large Data Bases, vol. 8, no. 2, pp. 79-100, 1999.
[12] 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.
[13] A.D. Kshemkalyani and M. Singhal, “Distributed Detection of Generalized Deadlocks,” Proc. 1997 Int'l Conf. Distributed Computing Systems, pp. 553-560, 1997.
[14] 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./Dec. 1999.
[15] S. Lee, “Fast, Centralized Detection and Resolution of Distributed Deadlocks in the Generalized Model,” IEEE Trans. Software Eng., vol. 30, no. 8, pp. 561-573, Sept. 2004.
[16] S. Lee and J.L. Kim, “Performance Analysis of Distributed Deadlock Dectection Algorithms,” IEEE Trans. Knowledge and Data Eng., vol. 13, no. 3, pp. 623-636, May/June 2001.
[17] X. Lin and J. Chen, “An Optimal Deadlock Resolution Algorithm in Multidatabase Systems,” Proc. 1996 Int'l Conf. Parallel and Distributed Systems, pp. 516-521, 1996.
[18] Y. Ling, J. Mi, and X. Lin, “A Variational Calculus Approach to Optimal Checkpoint Placement,” IEEE Trans. Computers, vol. 50, no. 7, pp. 699-708, July 2001.
[19] P.P. Macri, “Deadlock Detection and Resolution in a CODASYL Based Data Management System,” Proc. 1976 ACM SIGMOD Int'l Conf. Management of Data, pp. 45-49, 1976.
[20] W.A. Massey, “A Probabilistic Analysis of a Database System,” ACM SIGMETRICS Performance Evaluation Rev., vol. 14, no. 1, pp.141-146, 1986.
[21] J. Misra, “Distributed Discrete-Event Simulation,” ACM Computing Surveys, vol. 18, no. 1, pp. 39-65, Mar. 1986.
[22] R. Obermarck, “Distributed Deadlock Detection Algorithm,” ACM Trans. Database Systems, vol. 7, no. 2, pp. 187-208, June 1982.
[23] Y.C. Park, P. Scheuermann, and S.H. Lee, “A Periodic Deadlock Detection and Resolution Algorithm with a New Graph Model for Sequential Transaction Processing,” Proc. Eighth Int'l Conf. Data Eng., pp. 202-209, Feb. 1992.
[24] M. Roesler and W.A. Burkhard, “Semantic Lock Models in Object-Oriented Distributed Systems and Deadlock Resolution,” Proc. 1988 ACM SIGMOD Int'l Conf. Management of Data, pp. 361-370, 1988.
[25] S.M. Ross, Stochastic Processes. New York: John Wiley & Sons, 1996.
[26] M. Singhal, “Deadlock Detection in Distributed Systems,” Computer, vol. 40, no. 8, pp. 37-48, Nov. 1989.
[27] I. Terekhov and T. Camp, “Time Efficient Deadlock Resolution Algorithms,” Information Processing Letters, vol. 69, pp. 149-154, 1999.
[28] C. Tropper and A. Boukerche, “Parallel Simulations of Communicating Finite State Machines,” Proc. SCS Multiconf. Parallel and Distributed Simulation, pp. 143-150, May 1993.
[29] J. Villadangos, F. Farina, J.R. Gonzales de Mendivil, J.R. Garitagoitia, and A. Cordoba, “A Safe Algorithm for Resolving OR Deadlocks,” IEEE Trans. Software Eng., vol. 29, no. 7, pp. 608-622, July 2003.
[30] J.W. Wang, S.-T. Huang, and N.-S. Chen, “A Distributed Algorithm for Detecting Generalized Deadlocks,” Technical Report (SF-C-010-1), Computer Science, National Tsing-Hua Univ., 1990.
[31] Y.-M. Wang, M. Merritt, and A.B. Romanovsky, “Guaranteed Deadlock Recovery: Deadlock Resolution with Rollback Propagation,” Technical Report Number 648, 1998.
[32] S. Warnakulasuriya and T.M. Pinkston, “A Formal Model of Message Blocking and Deadlock Resolution in Interconnection Networks,” IEEE Trans. Parallel and Distributed Systems, vol. 11, no. 3, pp. 212-229, Mar. 2000.

Index Terms:
Deadlock detection scheduling, deadlock formation rate, deadlock persistence time.
Yibei Ling, Shigang Chen, Cho-Yu Jason Chiang, "On Optimal Deadlock Detection Scheduling," IEEE Transactions on Computers, vol. 55, no. 9, pp. 1178-1187, Sept. 2006, doi:10.1109/TC.2006.151
Usage of this product signifies your acceptance of the Terms of Use.