Breakpoints and time in distributed computations

  • Twan Basten
Part of the Lecture Notes in Computer Science book series (LNCS, volume 857)


This paper investigates how vector time can be used to set breakpoints in distributed computations for the purpose of analyzing and debugging distributed programs. A breakpoint is represented by a set of events in one or more processes. One interesting state in which a distributed computation can be halted is the earliest global state reflecting all events in a breakpoint. A simple expression in terms of vector time is derived to determine this state. Another state of interest is the global state reflecting only events preceding any of the breakpoint events, but reflecting none of the breakpoint events themselves. Two alternative expressions are presented for this state. The first one is in terms of vector time and a derived notion called reversed vector time. The second expression uses vector time and the convex closure of a set of events.

Key words

Breakpoints Vector time Global states Causality Distributed debugging 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    A.A. Basten. Event Abstraction in Modeling Distributed Computations. In K. Ecker, editor, Proceedings of the Workshop on Parallel Processing, Lessach, Austria, September 1993. Informatik-Bericht 94/1, Technische Universität Clausthal, Germany, January 1994.Google Scholar
  2. 2.
    A.A. Basten, T. Kunz, J.P. Black, M.H. Coffin, and D.J. Taylor. Time and the Order of Abstract Events in Distributed Computations. Computing Science Note 94/06, Eindhoven University of Technology, Department of Mathematics and Computing Science, Eindhoven, The Netherlands, February 1994. Submitted 01-02-1994 to Distributed Computing, 29pp in ms.Google Scholar
  3. 3.
    P.C. Bates. Debugging Heterogeneous Distributed Systems using Event-Based Models of Behavior. ACM SIGPLAN Notices, 24(1):11–22, January 1989. Proeedings of the ACM SIGPLAN/SIGOPS Workshop on Parallel and Distributed Debugging, Madison, Wisconsin, May, 1988.Google Scholar
  4. 4.
    K.M. Chandy and L. Lamport. Distributed Snapshots: Determining Global States of Distributed Systems. ACM Transactions on Computer Systems, 3(1):63–75, February 1985.CrossRefGoogle Scholar
  5. 5.
    B. Charron-Bost. Combinatorics and Geometry of Consistent Cuts: Application to Concurrency Theory. In J.-C. Bermond and M. Raynal, editors, Distributed Algorithms, volume 392 of Lecture Notes in Computer Science, pages 45–56. Springer Verlag, Berlin, Germany, 1989. Proceedings of WDAG '89, Nice, France, September 1989.Google Scholar
  6. 6.
    B. Charron-Bost, F. Mattern, and G. Tel. Synchronous and Asynchronous Communication in Distributed Computations. Technical Report LITP 91.55, Institut Blaise Pascal, Université Paris 7, Paris, France, September 1991.Google Scholar
  7. 7.
    R. Cooper and K. Marzullo. Consistent Detection of Global Predicates. In Proceedings of the ACM/ONR Workshop on Parallel and Distributed Debugging, pages 163–173, Santa Cruz, California, May 1991. The proceedings appeared also as ACM SIGPLAN Notices, 26(12), December 1991.Google Scholar
  8. 8.
    I.J.P. Elshoff. A Distributed Debugger for Amoeba. In Proceedings of the ACM SIGPLAN/SIGOPS Workshop on Parallel and Distributed Debugging, pages 1–10, Madison, Wisconsin, May 1988.Google Scholar
  9. 9.
    C.J. Fidge. Dynamic Analysis of Event Orderings in Message-Passing Systems. PhD thesis, Australian National University, Department of Computer Science, Canberra, Australia, 1989.Google Scholar
  10. 10.
    C.J. Fidge. Logical Time in Distributed Computing Systems. IEEE Computer, 24(8):28–33, August 1991.Google Scholar
  11. 11.
    J. Fowler and W. Zwaenepoel. Causal Distributed Breakpoints. In Proceedings of the 10th International Conference on Distributed Computing Systems, pages 134–141, Paris, France, May/June 1990.Google Scholar
  12. 12.
    D. Haban and W. Weigel. Global Events and Global Breakpoints in Distributed Systems. In Proceedings of the 21st Annual Hawaii International Conference on System Sciences, volume II, pages 166–175, Kailua-Kona, Hawaii, January 1988.Google Scholar
  13. 13.
    Thomas Kunz. Abstract Behaviour of Distributed Executions with Applications to Visualization. PhD thesis, Department of Computer Science, Technical University of Darmstadt, Darmstadt, Germany, May 1994.Google Scholar
  14. 14.
    L. Lamport. Time, Clocks and the Ordering of Events in a Distributed System. Communications of the ACM, 21(7):558–565, July 1978.CrossRefGoogle Scholar
  15. 15.
    Y. Manabe and M. Imase. Global Conditions in Debugging Distributed Programs. Journal of Parallel and Distributed Computing, 15(1):62–69, May 1992.CrossRefGoogle Scholar
  16. 16.
    K. Marzullo and G. Neiger. Detection of Global State Predicates. In S. Toueg, P.G. Spirakis, and L.Kirousis, editors, Distributed Algorithms, volume 579 of Lecture Notes in Computer Science, pages 254–272, Berlin, Germany, 1991. Springer Verlag. Proceedings of WDAG '91, Delphi, Greece, October 1991.Google Scholar
  17. 17.
    F. Mattern. Virtual Time and Global States of Distributed Systems. In M. Cosnard et al., editor, Parallel and Distributed Algorithms, pages 215–226. Elsevier Science Publishers B.V., Amsterdam, North-Holland, The Netherlands, 1989. Proceedings of the International Workshop held in Gers, France, October, 1988.Google Scholar
  18. 18.
    F. Mattern. On the Relativistic Structure of Logical Time in Distributed Systems. Bigre, 78:3–20, March 1992. Proceedings of the workshop: Datation et ContrÔle des Exécutions Réparties, December 4th, 1991, Rennes, France.Google Scholar
  19. 19.
    B.P. Miller and J.-D. Choi. Breakpoints and Halting in Distributed Programs. In Proceedings of the 8th International Conference on Distributed Computing Systems, pages 316–323, San Jose, California, June 1988.Google Scholar
  20. 20.
    E.T. Smith. Debugging Tools for Message-Based Communication Processes. In Proceedings of the 4th International Conference on Distributed Computing Systems, pages 303–310, San Fransisco, California, 1984.Google Scholar
  21. 21.
    D.J. Taylor. A Prototype Debugger for Hermes. In Proceedings of the 1992 CAS Conference, Volume I, pages 29–42, Toronto, Ontario, Canada, November 1992. IBM Canada Ltd. Laboratory, Centre for Advanced Studies.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1994

Authors and Affiliations

  • Twan Basten
    • 1
  1. 1.Dept. of Computing ScienceEindhoven University of TechnologyThe Netherlands

Personalised recommendations