The Role of Graphics in Parallel Program Development

Graphical visualisation plays an important role in parallel program development. Researchers have proposed and developed many visualisation tools that assist the development of parallel programs. A number of graph formalisms or notations have been used to visualise various aspects of parallel programs and their executions. This paper attempts to classify and compare these graph formalisms and notations which provide different information at different stages of parallel program development.

[1]  B. Shneiderman,et al.  Flowchart techniques for structured programming , 1973, SIGP.

[2]  Allen D. Malony,et al.  Faust: an integrated environment for parallel programming , 1989, IEEE Software.

[3]  Herbert A. Simon,et al.  Why a diagram is (sometimes) worth 10, 000 word , 1987 .

[4]  Michael T. Heath,et al.  Visualizing the performance of parallel programs , 1991, IEEE Software.

[5]  Toshimi Minoura,et al.  Structural active object systems for simulation , 1993, OOPSLA '93.

[6]  Daniel A. Reed,et al.  Virtual Reality and Parallel Systems Performance Analysis , 1995, Computer.

[7]  Jack B. Dennis,et al.  First version of a data flow procedure language , 1974, Symposium on Programming.

[8]  Blaine A. Price,et al.  A Principled Taxonomy of Software Visualization , 1993, J. Vis. Lang. Comput..

[9]  Cherri M. Pancake Graphical Support for Parallel Debugging , 1993 .

[10]  Kang Zhang,et al.  Towards visual development of message-passing programs , 1997, Proceedings. 1997 IEEE Symposium on Visual Languages (Cat. No.97TB100180).

[11]  Barton P. Miller,et al.  Optimal tracing and replay for debugging message-passing parallel programs , 1992, Supercomputing '92.

[12]  Jacques Vautherin,et al.  Parallel systems specitications with coloured Petri nets and algebraic specifications , 1986, European Workshop on Applications and Theory of Petri Nets.

[13]  Leslie Lamport,et al.  Time, clocks, and the ordering of events in a distributed system , 1978, CACM.

[14]  Ephraim P. Glinert Visual Programming Environments: Applications and Issues , 1990 .

[15]  Kurt Lautenbach,et al.  System Modelling with High-Level Petri Nets , 1981, Theor. Comput. Sci..

[16]  Kayhan Imre Experiences with monitoring and visualising the performance of parallel programs , 1993 .

[17]  Rae A. Earnshaw,et al.  Graphics tools for software engineers , 1989 .

[18]  Douglas N. Kimelman,et al.  The RP3 program visualization environment , 1991, IBM J. Res. Dev..

[19]  Gary J. Nutt,et al.  Visual Parallel Programming and Determinancy: A Language Specification, an Analysis Technique, and a Programming Tool , 1994, J. Parallel Distributed Comput..

[20]  Barton P. Miller What to Draw? When to Draw? An Essay on Parallel Program Visualization , 1993, J. Parallel Distributed Comput..

[21]  Kang Zhang,et al.  Performance tuning of message passing programs through visual analysis , 1994, Proceedings of 1994 International Conference on Parallel and Distributed Systems.

[22]  Jack Dongarra,et al.  HeNCE: graphical development tools for network-based concurrent computing , 1992, Proceedings Scalable High Performance Computing Conference SHPCC-92..

[23]  James C. Browne,et al.  Visual programming and debugging for parallel computing , 1995, IEEE Parallel Distributed Technol. Syst. Appl..

[24]  Pankaj Mehra,et al.  Performance measurement, visualization and modeling of parallel and distributed programs using the AIMS toolkit , 1995, Softw. Pract. Exp..

[25]  Mike Roberts Visual programming for transputer systems , 1990 .

[26]  Joe D. Warren,et al.  The program dependence graph and its use in optimization , 1987, TOPL.

[27]  Peter Hinz,et al.  Visualizing the performance of parallel programs , 1996 .

[28]  Michael T. Heath,et al.  The Visual Display of Parallel Performance Data , 1995, Computer.

[29]  R McGill,et al.  Graphical Perception and Graphical Methods for Analyzing Scientific Data , 1985, Science.

[30]  Robert M. Keller,et al.  Data Flow Program Graphs , 1982, Computer.

[31]  David Harel,et al.  Statecharts: A Visual Formalism for Complex Systems , 1987, Sci. Comput. Program..

[32]  Derek Chiou,et al.  Performance Visualization on Monsoon , 1993, J. Parallel Distributed Comput..

[33]  FerranteJeanne,et al.  The program dependence graph and its use in optimization , 1987 .

[34]  Barton P. Miller,et al.  Optimal tracing and replay for debugging message-passing parallel programs , 1992, Proceedings Supercomputing '92.

[35]  Steven Pinker,et al.  A theory of graph comprehension. , 1990 .

[36]  Roy O. Freedle,et al.  Artificial Intelligence and the Future of Testing , 1990 .

[37]  Mohan Ahuja,et al.  Passive-space and Time View: Vector Clocks for Achieving Higher Performance, Program Correction, and Distributed Computing , 1993, IEEE Trans. Software Eng..

[38]  Cherri M. Pancake,et al.  A Bibliography of Parallel Debuggers , 1989 .

[39]  Brad A. Myers,et al.  Taxonomies of visual programming and program visualization , 1990, J. Vis. Lang. Comput..

[40]  Wolfgang Reisig Petri Nets: An Introduction , 1985, EATCS Monographs on Theoretical Computer Science.

[41]  Margaret M. Burnett,et al.  Influence of visual technology on the evolution of language environments , 1989, Computer.

[42]  Wentong Cai,et al.  The “logical clocks” approach to the visualization of parallel programs , 1993 .

[43]  Thomas Bemmerl,et al.  Visualization of Message Passing Parallel Programs with the TOPSYS Parallel Programming Environment , 1993, J. Parallel Distributed Comput..

[44]  H. El-Rewini,et al.  Task Grapher: A Tool for Scheduling Parallel Program Tasks , 1990, Proceedings of the Fifth Distributed Memory Computing Conference, 1990..

[45]  Doug Kimelman,et al.  A methodology for visualizing performance of loosely synchronous programs , 1992, Proceedings Scalable High Performance Computing Conference SHPCC-92..

[46]  Hung-Khoon Tan,et al.  VISUAL PROGRAMMING FOR PARALLEL PROCESSING , 1996 .

[47]  Herbert A. Simon,et al.  Why a Diagram is (Sometimes) Worth Ten Thousand Words , 1987 .

[48]  John T. Stasko,et al.  Understanding and characterizing software visualization systems , 1992, Proceedings IEEE Workshop on Visual Languages.

[49]  Gul A. Agha,et al.  Visualizing actor programs using predicate transition nets , 1992, J. Vis. Lang. Comput..

[50]  Kang Zhang,et al.  Visputer - A Graphical Visualization Tool for Parallel Programming , 1995, Comput. J..

[51]  Stephen John Turner,et al.  Graphical Views of the Behavior of Parallel Programs , 1993, J. Parallel Distributed Comput..

[52]  Michael T. Heath,et al.  Parallel performance visualization: from practice to theory , 1995, IEEE Parallel Distributed Technol. Syst. Appl..

[53]  Ephraim P. Glinert,et al.  Visual Programming Environments: Paradigms and Systems , 1990 .

[54]  Dahlia Malkhi,et al.  Using visualization tools to understand concurrency , 1992, IEEE Software.

[55]  R. Jain,et al.  The Interaction of the Formal and the Practical in Parallel Programming Environment Development: CODE , 1991, LCPC.

[56]  Larry Rudolph,et al.  A Methodology for Visualizing Performance of Loosely Synchronous Programs , 1993, J. Parallel Distributed Comput..

[57]  Shi-Kuo Chang,et al.  Visual Languages: A Tutorial and Survey , 1986, IEEE Software.

[58]  Stephen M. Kosslyn,et al.  Elements of graph design , 1993 .