GVU Technical Report Number:
GIT-GVU-95-01
Title:
Visualizing the Execution of Threads-based Parallel Programs
Authors:
Qiang A. Zhao
John T. Stasko
Abstract:
One popular model of concurrent computing is threads-based parallel
programming on a shared memory parallel computer. A
variety of different vendors and machines provide such capabilities, and
support for threads programming has begun to appear in desktop
multiprocessor systems such as the Sun SPARCstation 20. Unfortunately,
building parallel programs that use threads is still quite challenging, even
for veteran serial programmers. This stems from the difficulty of
controlling communication and synchronization between the different
processes. We believe that the use of program visualization tools that
graphically depict the state of a program's execution can help
programmers develop, debug, and understand their code faster and more
easily. Most program visualization systems for parallel computation have
focused on performance views and views of message passing systems. Here,
we introduce a presentation methodology and a set of views particularly
appropriate for depicting the execution of threads-based parallel
programs. These views were created specifically for the pthreads
programming library on a KSR machine, but they could easily be adapted to
other threads-based systems. We also describe our techniques for
gathering program execution data to drive the views, and we discuss what
an ideal program tracing environment should provide to support the views
we developed.
Keywords:
Software visualization, parallel programming, debuggin, program
understanding, graphical user interface, threads, program visualization
You can access this technical report via:
PDF
Postscript
 
|