Title:
Progress: a Toolkit for Interactive Program Steering
Progress: a Toolkit for Interactive Program Steering
Authors
Vetter, Jeffrey Scott
Schwan, Karsten
Schwan, Karsten
Authors
Person
Advisors
Advisors
Associated Organizations
Organizational Unit
Series
Collections
Supplementary to
Permanent Link
Abstract
Interactive program steering permits researchers to monitor and guide their
applications during runtime. Interactive steering can help make end users more
effective in addressing the scientific or engineering questions being solved
with these programs, and it may be used to improve the performance of complex
parallel and distributed codes. Progress is a toolkit for developing steerable
applications. Users instrument their applications with library calls and then
steer parallel applications with Progress runtime system. Progress provides
steerable objects which encapsulate program abstractions for monitoring and
steering during program execution. Once created, steering objects are known to
and manipulated by Progress' two components: (1) a server executing in the
same memory space as the target program and capable of inspecting and
manipulating program state, and (2) a potentially remote client providing
command and graphical interfaces. Developers instrument their applications
with the Progress toolkit library to create and maintain these steering
objects. The server maintains information about the steering objects and
performs steering actions on the application. This toolkit provides sensors,
probes, actuators, function hooks, complex actions, and synchronization
points. Progress' server is built on a Mach-compatible Cthreads library; it is
a general toolkit for use with a variety of multithreaded, C programs
executing on multiprocessors. Progress has been applied to several large-scale
parallel application programs, including a molecular dynamics code and an N
bodies simulation. It is currently being used with a complex global
atmospheric modeling code.
Sponsor
Date Issued
1995
Extent
171298 bytes
Resource Type
Text
Resource Subtype
Technical Report