Home

About

Advanced Search

Browse by Discipline

Scientific Societies

E-print Alerts

Add E-prints

E-print Network
FAQHELPSITE MAPCONTACT US


  Advanced Search  

 
Parallel Assertions for Debugging Parallel Programs Daniel Schwartz-Narbonne, Feng Liu, Tarun Pondicherry, David August, Sharad Malik
 

Summary: Parallel Assertions for Debugging Parallel Programs
Daniel Schwartz-Narbonne, Feng Liu, Tarun Pondicherry, David August, Sharad Malik
Princeton University
{dstwo,fengliu,tpondich,august,sharad}@princeton.edu
Abstract--A parallel program must execute correctly even in
the presence of unpredictable thread interleavings. This interleav-
ing makes it hard to write correct parallel programs, and also
makes it hard to find bugs in incorrect parallel programs. A range
of tools have been developed to help debug parallel programs,
ranging from atomicity-violation and data-race detectors to
model-checkers and theorem provers. One technique that has
been successful for debugging sequential programs, but less
effective for parallel programs, is running the program using
assertion predicates provided by the developer.
These assertions allow programmers to specify and check their
assumptions. In a multi-threaded program, the programmer's
assumptions include both the current state, and any actions
(e.g. access to shared memory) that other, parallel executing
threads might take. We introduce parallel assertions which allow
programmers to express these assumptions for parallel programs

  

Source: August, David - Department of Computer Science, Princeton University

 

Collections: Computer Technologies and Information Sciences