Design of a debugger for large-grain data flow programs

Most approaches t o parallel debugging have assumed the worst: t ha t the program t o be debugged must be viewed as a black box, with no internal structure useful t o the debugger. This document assumes the opposite-that the program was written using Large-Grain Data Flow 2 (LGDFZ). Using this as a basis, the design of a user interface for a graphical debugger is proposed, t o view and control execution of a parallel program from a high, inter-process level before descending into a standard debugger t o view the intra-process actions. Breakpoints a re presented in a natural way which doubles as a single-step mechanism. LGDF2 provides the framework t o reliably repeat executions, t o restrict non-breakpointed processes from altering important state, and t o facilitate pre-execution analysis t o determine the minimum amount of data tha t needs t o be logged during tracing. Index Terms Parallel Debugging, Instant Replay, Non-determinism, Large-Grain Data Flow, Graphical Debugging, Program Visualization, High-level Debugging, Parallel Monitoring.

[1]  Gilles Kahn,et al.  The Semantics of a Simple Language for Parallel Programming , 1974, IFIP Congress.

[2]  D.C. DiNucci,et al.  Practical support for parallel programming , 1988, [1988] Proceedings of the Twenty-First Annual Hawaii International Conference on System Sciences. Volume II: Software track.