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.
Preview
Unable to display preview. Download preview PDF.
References
J. Nehmer,T. Gauweiler Design Rationale for the MOSKITO kernel. ZRI report 13/89, Univ. of Kaiserslautern (1989)
M.J. Accetta et al.: Mach: A New Kernel Foundation for UNIX Development. Proc. of Summer Usenix, 93–112 (1986)
H. Zimmermann et al.: Basic concepts for the support of distributed systems: the CHORUS approach. Proc. of the 2nd ICDCS, (1981)
I.J. Elshoff: A Distributed Debugger for Amoeba. SIGPLAN Notices 24(1)1988
D.P. Helmbold, C.E. McDowell: Computing reachable states of parallel programs. Proc. ACM/ ONR Workshop on Parallel and Distributed Debugging, 1991
R. Netzer, B. Miller: Improving the accuracy of data race detection. Proc. 3rd Symp. on Principles & Practice of Parallel Programming (1991)
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)
A. Beranek: Execution Replay and Race Detection for Debugging MOSKITO Applications. ZRI report, Univ. of Kaiserslautern, (1992)
T.J. LeBlanc, J.M. Mellor-Crummey: Debugging Parallel Programs with Instant Replay. IEEE Trans. Comput. C-36, 4, (1987)
R.H. Carver, K.C. Tai: Reproducible Testing of Concurrent Programs Based on Shared Variables. Proc. 6th. ICDCS, pp. 428–433, (1986)
A. Dinning, E. Schonberg: Detecting Access Anomalies in Programs with Critical Sections. ACM/ONR Workshop on Parallel and Distributed Debugging, (1991)
L. Lamport Time, Clocks and the Ordering of Events in a Distributed System. Communications of the ACM 21(7) (1978)
F. Mattern: Virtual Time and Global States of Distributed Systems. Parallel and Distributed Algorithms, pp. 215–226, (1989)
C.J. Fidge: Partial orders for parallel debugging. SIGPLAN Notices 24(1),1988
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)
R. Netzer, B. Miller: Detecting Data Races in Parallel Program Executions. Proc. 3rd Workshop Prog. Lang, and Compilers for Parallel Computing (1990)
Author information
Authors and Affiliations
Editor information
Rights 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