Skip to main content

The parallel complexity of deadlock detection

  • Communications
  • Conference paper
  • First Online:
Mathematical Foundations of Computer Science 1986 (MFCS 1986)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 233))

  • 128 Accesses

Abstract

When serially reusable multiunit resources are shared among many processes, each of which has exclucive control over some resource units, it is possible for deadlocks to happen. The work of Holt, [ Holt, 71b], stated the problem of deadlock detection as a directed multigraph problem. In this paper we examine the possibility of existence of fast parallel algorithms for deadlock detection. Although many graph problems have efficient parallel solutions (in parallel polylogarithic time, by using only a polynomial number of processors), we present strong evidence that this is not the case for the general deadlock detection problem. We show that the problem is complete in P under log-space reductions and thus probably not efficiently parallelizable. Fortunately, when the problem is restricted (e.g. single-unit requests of processes or single-unit resources), then it falls in NC. We present efficient parallel algorithms for the restricted versions of the deadlock detection problem.

This research was funded in part by the NSF Contracts MCS83-00630 and DCR 8503497 and the Ministry of Industry, Energy and Technology of Greece.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. E.G. Coffman and P.J. Denning.: "Operating Systems Theory" Prentice-Hall, Englewood Cliffs, New Jersey, 1973.

    Google Scholar 

  2. E.W. Dijkstra.: "Solution of a Problem in Concurrent Programming Control", CACM, Vol. B., No 9, Sept. 1965.

    Google Scholar 

  3. Dobkin D., R.J. Lipton and S. Reiss.: "Linear Programming is log-space hard for P", Information Processing Lett. 9(2), 96–97, 1979.

    Google Scholar 

  4. Dymond P.W. and M. Tompa.: "Speedups of determinstic machines by synchronous parallel machines", Proc. 15th Symp. on Theory of Computing, Boston M.A., April 1983.

    Google Scholar 

  5. V.D. Gligor and S.H. Shattuck.: "On Deadlock Detection in Distributed Systems", IEEE Trans. on Software Engineering, Vol. SE-6. No 5, Sept. 1980.

    Google Scholar 

  6. E.M. Gold.: "Deadlock Prediction: Easy and Difficult Cases", Vol. 7, No. 3 Aug. 1978.

    Google Scholar 

  7. Goldschlager L.M., R.A. Show and J. Staples.: "The maximum flow problem is log-space complete for P", Theoretical Computer Science, 21 105–111, 1982.

    Google Scholar 

  8. A.N. Habermann.: "Prevention of System Deadlock", CACM, Vol. 12, No. 7, July 1969.

    Google Scholar 

  9. R.C. Holt.: "Comments on Prevention of Systems Deadlocks", CACM, Vol. 14, No. 1, Jan. 1971.

    Google Scholar 

  10. R.C. Holt.: "On Deadlock in Computer Systems", Ph.D. Thesis, Cornell Unic., 1971.

    Google Scholar 

  11. R.C. Holt.: "Some Deadlock Properties of Computer Systems", Computing Surveys, Vol. 4, No. 3, Sept. 1972.

    Google Scholar 

  12. J.Ja'Ja'.: "Parallel Graph Algorithms", Tech. Report, Penn. State University, 1978.

    Google Scholar 

  13. Jones N.D. and W.T. Laaser.: "Complete problems for deterministic polynomial time", Theort. Comput. Sci. 3(1), 105–117, 1976.

    Google Scholar 

  14. T. Kameda.: "Testing Deadlock-Freedom of Computer Systems", JACM, Vol. 27, No.2. Apr. 1980.

    Google Scholar 

  15. Ladner R.E.: "The Circuit value problem is log-space complete for P", SIGACT news 7(1), 18–20 (1975).

    Google Scholar 

  16. D. Menasce and R.R. Muntz.: "Locking and Deadlock Detection in Distributed Data Bases", IEEE Trans. on Software Eng., Vol. SE-5, No. 3 May 1979.

    Google Scholar 

  17. T. Minoura.: "Deadlock Avoidance Revisited", JACM, Vol. 24, No.4 Oct. 1982.

    Google Scholar 

  18. R. Obermark.: "Distributed Deadlock Detection Algorithm", ACM TODS, Vol. 7, No.2, June 1982.

    Google Scholar 

  19. J. Peterson and A. Silberchatz.: "Operating System Concepts", Addison-Welsey, 1983.

    Google Scholar 

  20. Reif J.H.: "On the power of probabilistic choice in synchronous parallel computations", 9th International Colloquium on Automata, Languages and Programming, Aarthus, Denmark, 442–450, July 1982.

    Google Scholar 

  21. D.G. Rosenkrantz, R.E. Stearns and Lewis P.M.: "System Level Concurrency Control for Distributed Database Systems", ACM TODS, Vol. 3, No.2, June 1978.

    Google Scholar 

  22. Savage C. and J. Ja'Ja'.: Fast Efficient Parallel algorithms for some graph problems", SIAM J. Comp. 10(4), 1981.

    Google Scholar 

  23. J. Schwartz.: "Ultracomputers", ACM Transactions on Programming Languages and System, 1980.

    Google Scholar 

  24. A.C. Shaw.: "The Logical Design of Operating Systems", Prentice Hall, Englewood Cliffs, N.J. 1974.

    Google Scholar 

  25. Wyllie J.C.: "The Complexity of Parallel Computations", Ph. D. Thesis and Tch. Report 79-387, Dept. of C.S. Cornell Univ. 1979.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Jozef Gruska Branislav Rovan Juraj Wiedermann

Rights and permissions

Reprints and permissions

Copyright information

© 1986 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Spirakis, P. (1986). The parallel complexity of deadlock detection. In: Gruska, J., Rovan, B., Wiedermann, J. (eds) Mathematical Foundations of Computer Science 1986. MFCS 1986. Lecture Notes in Computer Science, vol 233. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0016285

Download citation

  • DOI: https://doi.org/10.1007/BFb0016285

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-16783-9

  • Online ISBN: 978-3-540-39909-4

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics