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.

Date

Publication

PPoPP 1991

Authors

Share