About cookies on this site Our websites require some cookies to function properly (required). In addition, other cookies may be used with your consent to analyze site usage, improve the user experience and for advertising. For more information, please review your options. By visiting our website, you agree to our processing of information as described in IBM’sprivacy statement. To provide a smooth navigation, your cookie preferences will be shared across the IBM web domains listed here.
Publication
PPoPP 1991
Conference paper
RACE FRONTIER: Reproducing data parallel-program debugging
Abstract
A data race is a typical case of unintended nondeterminism, which occurs when two or more processes concurrently access the same memory location, with at least one of the accesses being a write access. This paper presents a mechanism to debug data races in the execution of parallel programs. A RACE FRONTIER is a set of execution events, one event for each process, whose execution histories, including data races preceding them, can be reproduced. Data races can be debugged by first identifying a RACE FRONTIER and then reproducing all the events, including data-race events? up to the RACE FRONTIER. Reproducing and debugging data races up to a RACE FRONTIER will eventually result in an execution instance without any data races. This paper describes how to identify a RACE FRONTIER and how to reproduce the execution history of data races up to the RACE FRONTIER.