Advances in Parallel Debuggers: New Approaches to Visualization
暂无分享,去创建一个
Programmers who write serial code can take advantage of a wide range of debuggers whose features draw on more than three decades of research in how humans design and verify computer programs. Debugging tools are generally designed to facilitate a cyclic, cause-effect approach to error detection and correction. This strategy is effective in serial environments, where program execution is repeatable; in parallel settings, however, many traditional techniques are rendered useless by the effects of nondeterminism. This essay reviews recent research in parallel debuggers. In particular, it addresses the difficulties involved in developing effective schemes for portraying program behavior. A debugger''s visualization system encompasses representational and interpretive concepts as well as graphical display techniques. The goal of visualization design is to furnish relevant views of program execution as clearly and succinctly as possible. Inadequate or inappropriate visualization systems jeopardize the usefulness and acceptability of debugging tools by making it difficult for the user to draw accurate inferences about the relationship between program code and run-time errors. Industrial, governmental, and academic research efforts in debugger visualization are traced, with emphasis on the evolution of new strategies and techniques. Three basic approaches are identified -- corresponding to functional, structural, and behavioral perspectives -- and examples of recent developments are presented from each area. This is followed by a summary of the problems still confronting visualization designers.