DPDP: An interactive debugger for parallel and distributed processing
Abstract This article presents the debugger for parallel and distributed processing (DPDP) system. First, the processing environment is defined; then, several types of bugs that may occur within that environment are investigated. DPDP is designed to provide an adequate tool for parallel and distributed debugging. Accordingly, it enables the programmer to monitor, detect, and correct a system interactively. The system design is based on a formal event-action model that exploits a trace file to record the events, whereas the actions are determined according to a syntactic analysis of the underlying events. This work also includes the design and implementation of the DPDP system on a local area network. DPDP is available in C language and is used to debug parallel and distributed applications that are written in C. Four case studies are considered to evaluate its capabilities. The study includes experiments for finding race conditions, debugging of sequencing errors, and detecting both resource and communication deadlocks.