Performance Visualization for Distributed Shared Memory Systems

Distributed shared memory (DSM) systems allow programmers to use a shared memory programming model on distributed systems. However, DSM systems present new challenges to performance evaluation and debugging. While programmers write programs with a shared memory model using shared variables and shared memory synchronization primitives to coordinate processes, most performance problems arise from the implementation of these abstractions with messages. Because the DSM abstraction hides the underlying message passing, it is difficult to identify the sources of performance problems. We have developed an instrumentation system and performance evaluation techniques for DSM systems that correlate message passing behavior in the lower levels of a DSM system with the higher-level shared memory programming abstractions. We have developed a prototype tool called Xunify to demonstrate the feasibility of such an approach. Xunify provides graphical animations of DSM programs at three distinct levels and offers a powerful event filtering facility capable to help show system behavior corresponding to specific DSM constructs.

[1]  Luc Renambot,et al.  SVMview: A Performance Tuning Tool for DSM-Based Parallel Computers , 1996, Euro-Par, Vol. I.

[2]  James Arthur Kohl,et al.  A Tool to Aid in the Design, Implementation, and Understanding of Matrix Algorithms for Parallel Processors , 1990, J. Parallel Distributed Comput..

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

[4]  James E. Mankovich,et al.  Extensible parallel program performance visualization , 1995, MASCOTS '95. Proceedings of the Third International Workshop on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems.

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

[6]  Margaret Martonosi,et al.  MemSpy: analyzing memory system bottlenecks in programs , 1992, SIGMETRICS '92/PERFORMANCE '92.

[7]  Madhu Sudan,et al.  A reliable dissemination protocol for interactive collaborative applications , 1995, MULTIMEDIA '95.

[8]  D.A. Reed,et al.  An Integrated Compilation and Performance Analysis Environment for Data Parallel Programs , 1995, Proceedings of the IEEE/ACM SC95 Conference.

[9]  John T. Stasko,et al.  Integrating visualization support into distributed computing systems , 1995, Proceedings of 15th International Conference on Distributed Computing Systems.

[10]  Jerry C. Yan Performance Tuning with AIMS - An Automated Instrumentation and Monitoring System for Multicomputers , 1994, HICSS.

[11]  Eileen Kraemer,et al.  A Methodology for Building Application-Specific Visualizations of Parallel Programs , 1993, J. Parallel Distributed Comput..

[12]  A. Geist Visualization, Debugging, and Performance in Pvm , 1994 .

[13]  Leslie Lamport,et al.  How to Make a Multiprocessor Computer That Correctly Executes Multiprocess Programs , 2016, IEEE Transactions on Computers.

[14]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[15]  Raphael A. Finkel,et al.  Unify: A Scalable Approach to Multicomputer Design , 1995 .

[16]  David P. Reed,et al.  Synchronization with eventcounts and sequencers , 1979, CACM.

[17]  John L. Hennessy,et al.  Mtool: An Integrated System for Performance Debugging Shared Memory Multiprocessor Applications , 1993, IEEE Trans. Parallel Distributed Syst..

[18]  Roger M. Needham,et al.  Grapevine: an exercise in distributed computing , 1982, CACM.

[19]  Alan L. Cox,et al.  Network multicomputing using recoverable distributed shared memory , 1993, Digest of Papers. Compcon Spring.

[21]  Alan L. Cox,et al.  TreadMarks: shared memory computing on networks of workstations , 1996 .

[22]  Brian N. Bershad,et al.  The Midway distributed shared memory system , 1993, Digest of Papers. Compcon Spring.

[23]  Alan L. Cox,et al.  A performance debugger for eliminating excess synchronization in shared-memory parallel programs , 1996, Proceedings of MASCOTS '96 - 4th International Workshop on Modeling, Analysis and Simulation of Computer and Telecommunication Systems.

[24]  Vaidy S. Sunderam,et al.  PVM: A Framework for Parallel Distributed Computing , 1990, Concurr. Pract. Exp..

[25]  John Stasko,et al.  The PARADE Environment for Visualizing Parallel Program Executions: A Progress Report , 1995 .

[26]  Message Passing Interface Forum MPI: A message - passing interface standard , 1994 .

[27]  James Arthur Kohl,et al.  The PVM 3.4 tracing facility and XPVM 1.1 , 1996, Proceedings of HICSS-29: 29th Hawaii International Conference on System Sciences.

[28]  Bernd Mohr,et al.  TAU: A Portable Parallel Program Analysis Environment for pC++ , 1994, CONPAR.

[29]  J. C. Yan,et al.  Performance tuning with AIMS/spl minus/an Automated Instrumentation and Monitoring System for multicomputers , 1994, 1994 Proceedings of the Twenty-Seventh Hawaii International Conference on System Sciences.