Next: Proposed Project
Up: Two Examples
Previous: Gist
Wamtrace [1] makes a completely different set of
choices. It is portable across machines, but specialized to one particular
parallel programming mechanism, the Aurora parallel Prolog system. Events are
buffered by a separate process, and written to a file concurrently with
program execution as the internal buffers fill up. Thus there is no strict
limit to the number of events that can be logged. The events logged are
"system" events of importance to the behavior of parallel Prolog programs: the
creation and elimination of parallel choice points, and the execution of
parallel alternatives emanating from those choice points. (It is also
possible for the user to log events from the Prolog program being executed,
but graphical interpretation of them requires modifying the wamtrace program
itself.) These events are displayed dynamically, with a dynamically changing
tree-shaped representation of the Prolog computation, with representations of
the processes exploring it moving around on the tree in an illustration of the
dispatching strategy. Wamtrace has been used both for tuning the Aurora
system and for understanding the behavior of application programs.
Karen D. Toonen
1998-11-19