Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to main content

Concurrent single stepping in event‐visualization tools

  • Published:
Cluster Computing Aims and scope Submit manuscript

Abstract

Event visualization tools are commonly used to facilitate the debugging of parallel or distributed applications, but they are insufficient for full debugging purposes. The need for traditional debugging operations, such as single stepping, is often overlooked in these tools. When integrating such operations, the issue of concurrency needs to be addressed. This paper justifies and describes three single-stepping operations that we found suitable for partially-ordered executions: global-step, step-over and step-in. The description of these operations is based on a sound theoretical framework. This framework can serve as a basis to extend the operations to deal with specific properties of event visualization tools. For example, abstraction techniques are often used to reduce the overwhelming amount of detail presented to the user when visualizing non-trivial executions. These abstraction operations introduce additional problems for single stepping. The paper discusses the problems induced by two different abstraction operations in the context of a specific event visualization tool, Poet, and describes how the single-stepping operations are adapted to deal with these problems.

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

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. T. Basten, T. Kunz, J.P. Black, M.H. Coffin and D.J. Taylor, Vector time and causality among abstract events in distributed computations, Distributed Computing (November 1997) 21-39.

  2. K.M. Chandy and L. Lamport, Distributed snapshots: Determining global states of distributed systems, ACM Transactions on Computer Systems 3(1) (February 1985) 63-75.

    Article  Google Scholar 

  3. S.G. Eick and A. Ward, An interactive visualization for message sequence charts, in: Proceedings of the 4th Workshop on Program Comprehension, Berlin, Germany (March 1996) pp. 2-8.

  4. C.J. Fidge, Logical time in distributed computing systems, IEEE Computer 14(8) (August 1991) 28-33.

    Google Scholar 

  5. A. Geist, A. Beguelin, J. Dongarra, W. Jiang, R. Manchek and V. Sunderam, PVM: Parallel Virtual Machine. A User's Guide and T. Kunz, M. Khouzam / Concurrent single stepping 243 Tutorial for Networked Parallel Computing (MIT Press, Cambridge, MA, 1994).

    Google Scholar 

  6. M.T. Heath and J.A. Etheridge, Visualizing the performance of parallel programs, IEEE Software 8(5) (September 1991) 29-39.

    Article  Google Scholar 

  7. L. Hicks and F. Berman, Debugging heterogeneous applications with Pangaea, in: Proceedings of SPDT'96: SIGMETRICS Symposium on Parallel and Distributed Tools, Philadelphia, PA (May 1996) pp. 41-50.

  8. P. Iglinski, N. Kazouris, S. MacDonald, D. Novillo, I. Parsons, J. Schaeffer, D. Szafron and D. Woloschuk, Using a template-based parallel programming environment to eliminate errors, in: Proceedings of the 10th Annual International Symposium on High-Performance Computing Systems and Applications, Ottawa, Ontario, Canada (June 1996).

  9. J.A. Kohl and G.A. Geist, The PVM 3.4 tracing facility and XPVM 1.1, Technical report, Computer Science & Mathematic Division, Oak Ridge National Laboratory, Oak Ridge, TN (1995).

    Google Scholar 

  10. E. Kraemer and J.T. Stasko, Creating an accurate portrayal of concurrent executions, IEEE Concurrency 6(1) (1998) 36-46.

    Article  Google Scholar 

  11. D. Kranzlmüller, S. Grabner and J. Volkert, Event graph visualization for debugging large applications, in: Proceedings of SPDT'96: SIGMETRICS Symposium on Parallel and Distributed Tools, Philadelphia, PA (May 1996) pp. 108-117.

  12. T. Kunz, Reverse engineering distributed applications: an event abstraction tool, International Journal of Software Engineering and Knowledge Engineering 4(3) (1994) 303-323.

    Article  Google Scholar 

  13. T. Kunz, J.P. Black, D.J. Taylor and T. Basten, Poet: Target-systemin-dependent visualizations of complex distributed-application executions, Computer Journal 40(8) (February 1998) 499-512.

    Article  Google Scholar 

  14. L. Lamport, Time, clocks, and the ordering of events in a distributed system, Communications of the ACM 21 (1978) 558-565.

    Article  MATH  Google Scholar 

  15. T.J. LeBlanc and J.M. Mellor-Crummey, Debugging parallel programs with instant replay, IEEE Transactions on Computers 36(4) (April 1987) 471-482.

    Google Scholar 

  16. R. Schwarz and F. Mattern, Detecting causal relationships in distributed computations: In search of the holy grail, Distributed Computing 7 (September 1994) 149-174.

    Article  MATH  Google Scholar 

  17. D. Zernik, M. Snir and D. Malki, Using visualization tools to understand concurrency, IEEE Software 9(3) (1992) 87-92.

    Article  Google Scholar 

Download references

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Kunz, T., Khouzam, M. Concurrent single stepping in event‐visualization tools. Cluster Computing 3, 231–243 (2000). https://doi.org/10.1023/A:1019092506798

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1019092506798

Keywords