Skip to main content

Data race detection based on execution replay for parallel applications

  • Conference paper
  • First Online:
Parallel Processing: CONPAR 92—VAPP V (VAPP 1992, CONPAR 1992)

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

Abstract

We describe an integrated approach to support debugging of nondeterministic concurrent programs. Our tool provides reproducible program behavior and incorporates mechanisms to identify synchronization bugs commonly termed data races or access anomalies. Both features are based on partially ordered event logs captured at run time. Our mechanism identifies a race condition that is guaranteed to be unaffected by other races in the considered execution. Data collection and analysis for race detection has no impact on the original computation since it is done in replay mode. The race detection and execution replay mechanisms are integrated in the MOSKITO operating system.

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. J. Nehmer,T. Gauweiler Design Rationale for the MOSKITO kernel. ZRI report 13/89, Univ. of Kaiserslautern (1989)

    Google Scholar 

  2. M.J. Accetta et al.: Mach: A New Kernel Foundation for UNIX Development. Proc. of Summer Usenix, 93–112 (1986)

    Google Scholar 

  3. H. Zimmermann et al.: Basic concepts for the support of distributed systems: the CHORUS approach. Proc. of the 2nd ICDCS, (1981)

    Google Scholar 

  4. I.J. Elshoff: A Distributed Debugger for Amoeba. SIGPLAN Notices 24(1)1988

    Google Scholar 

  5. D.P. Helmbold, C.E. McDowell: Computing reachable states of parallel programs. Proc. ACM/ ONR Workshop on Parallel and Distributed Debugging, 1991

    Google Scholar 

  6. R. Netzer, B. Miller: Improving the accuracy of data race detection. Proc. 3rd Symp. on Principles & Practice of Parallel Programming (1991)

    Google Scholar 

  7. A. Beranek: Execution Replay and Data Race Detection for the Debugging of MOSKITO Applications. In: WJoosen, E. Milgrom (eds.):Parallel Computing: From Theory to Sound Practice IOS Press, pp 80–91, (1992)

    Google Scholar 

  8. A. Beranek: Execution Replay and Race Detection for Debugging MOSKITO Applications. ZRI report, Univ. of Kaiserslautern, (1992)

    Google Scholar 

  9. T.J. LeBlanc, J.M. Mellor-Crummey: Debugging Parallel Programs with Instant Replay. IEEE Trans. Comput. C-36, 4, (1987)

    Google Scholar 

  10. R.H. Carver, K.C. Tai: Reproducible Testing of Concurrent Programs Based on Shared Variables. Proc. 6th. ICDCS, pp. 428–433, (1986)

    Google Scholar 

  11. A. Dinning, E. Schonberg: Detecting Access Anomalies in Programs with Critical Sections. ACM/ONR Workshop on Parallel and Distributed Debugging, (1991)

    Google Scholar 

  12. L. Lamport Time, Clocks and the Ordering of Events in a Distributed System. Communications of the ACM 21(7) (1978)

    Google Scholar 

  13. F. Mattern: Virtual Time and Global States of Distributed Systems. Parallel and Distributed Algorithms, pp. 215–226, (1989)

    Google Scholar 

  14. C.J. Fidge: Partial orders for parallel debugging. SIGPLAN Notices 24(1),1988

    Google Scholar 

  15. J.D. Choi, S.L.Min: Race Frontier: Reproducing Data Races in Parallel-Program Debugging. Proc. 3rd Symp. on Princ. & Practice of Parallel Programming, (1991)

    Google Scholar 

  16. R. Netzer, B. Miller: Detecting Data Races in Parallel Program Executions. Proc. 3rd Workshop Prog. Lang, and Compilers for Parallel Computing (1990)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Luc Bougé Michel Cosnard Yves Robert Denis Trystram

Rights and permissions

Reprints and permissions

Copyright information

© 1992 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Beranek, A. (1992). Data race detection based on execution replay for parallel applications. In: Bougé, L., Cosnard, M., Robert, Y., Trystram, D. (eds) Parallel Processing: CONPAR 92—VAPP V. VAPP CONPAR 1992 1992. Lecture Notes in Computer Science, vol 634. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-55895-0_404

Download citation

  • DOI: https://doi.org/10.1007/3-540-55895-0_404

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-55895-8

  • Online ISBN: 978-3-540-47306-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics