PTLIB Review of Pangaea

See the PTLIB Review of Parallel Debuggers and Performance Analyzers which includes this evaluation of Pangaea for the review criteria and methodology as well as a comparison with other similar tools.

Performance

Acceptable monitoring overhead
Real-time monitoring overhead is extensive. Monitoring may also be done post-mortem to avoid this compication.

Intrusion compensation
No.

Acceptable response time
Yes.

Memory/disk requirements
About 6 megs of hard drive space is required (2 for pangaea and 4 for XPVM).

Scalable data collection
Yes. "Record" and "replay" may be suspended and resumed to control the size of the generated log file.

Scalable data presentation
Yes. The Event Graph window has a zooming option which allows the data to be viewed in a scalable manner.

Versatility

Languages/programming models/ communication libaries supported
C and Fortran / XPVM (PVM)

Runs on currently popular platforms
Yes. Sun Sparc, DEC Alpha, IBM R6K, SGI IRIX

Platform dependencies isolated
Yes.

Support for heterogeneous environment
Yes.

Interacts with current or soon-to-be standards (e.g., PVM, MPI, HPF)
Yes.

Uses SDDF
Yes.

Change/customize/add new views easily
The Event Graph window has a feature which allows the user to change the viewing scale.

Ease of Use

Documentation
Below Average. In the section that discusses incorporating pangaea into the user's source code, there is no mention of calling "auxlog_cleanup()" - yet this is quite necessary.

Ease of installation
Average. The user must install both the pangaea files AND the modified version of XPVM included with pangaea. Tcl/Tk must also be installed on the network.

Command-line interface
Pangaea may also be run from the command-line with the results of the generated logfile viewed at a later time using the modified version of XPVM included with pangaea.

Window-based interface
Yes. Pangaea uses a slightly modified version of XPVM and therefore has a user-friendly interface.

GUI common look-and-feel (OSF/Motif Style Guide)
Yes. The windows behave as the user would expect.

Privilege-free installation
Yes.

Reports information at source code level
No.

Automated instrumentation
No. Pangaea libraries must be included and functions must be added to the source code manually.

Compile without special linking
Yes. No linking required beyond the linking necessary for any PVM applications.

Maturity

Runs without crashing the monitored program
Yes. It does NOT crash the monitored program.

Reports and recovers from error conditions
No.

Support
Ongoing support is questionable (because Pangaea was a research project and doesn't have a support contact). I did receive a quick response to my question from the author (lhicks@cs.ucsd.edu) though.

Capabilities

Support for multiple threads per node
No.

Presents different levels of abstraction, from global to individual threads, procedures, or data structures
No. Pangaea allows the user to view the program globally or from the process level, but not at a procedural level.

Single point control for parallel debugging
Yes. The Event Graph in the included version of XPVM is used for this purpose.

Attach/detach to/from running program
No.

Breakpoints and data watchpoints
No. Pangaea doesn't have breakpoints as you would find in a debugger, but Pangaea does allow the user to playback a program without worrying about races by using a logfile which contains information about what occurred during the program and in what order these events occurred.

Program state examination
No.

Program state modification
No.

Event tracing mechanism
Yes. Two separate tracefiles are created which allow the user to "replay" the execution of the program. The user can be assurred that the events will take place in the same order as previous runs by using the logfile.

Cache and memory reference tracking/display
No.

Remote data access pattern analysis
No. Parallel languages like HPF are not supported by Pangaea.

Message tracing/display
Yes. This is viewed in the Event Graph window in the XPVM included with pangaea.

Input/output characterization
No.

Real-time monitoring
Yes. The user can monitor (with some performance degradation) his/ her program real-time using the graphical views provided by both Pangaea and XPVM.

Post-mortem analysis
Yes. Pangaea can display information to the user post-mortem using trace file content. The user can be assurred that the events will take place in the same order as previous runs by using the logfile.

Profiling at level of subprocedures and coarse blocks
No.

Utilization display (communications/idle/IO/computation)
No. But XPVM already provides these features and Pangaea is designed to be an addition to XPVM.

Performance prediction
No.

Comparisons between different runs
No.

Other

Commercial/research
Research

Cost
Freely Available.

Software Obtained

Location

Date
Early August, 1996

Version
Original and only.

Summary

Pangaea certainly offers some features that are not found in many other monitors/debuggers. By using the replay feature, the user is able continually to view his/her program execution without the concern of race conditions. This feature can be useful for parallel debugging. Requiring the user to use a modified version of XPVM to be able to use Pangaea would probably cause some users to avoid using Pangaea. Many users prefer the ability to use a global version of XPVM. Although certainly not as powerful as some commercial parallel tools, Pangaea can still serve as a useful tool to the parallel developer.

Ratings (Worse 1 ... 5 Better)

Click here to view a screen shot
Reviewed by Chris Hastings, hastings@cs.utk.edu
Aug. 13, 1996