
A Tool for Monitoring Multithreaded Program Performance
This website describes ThreadMon, a monitoring tool for improving the
performance of multithreaded programs. Traditional tools, e.g., gprof,
thread analyzer, etc., present overall indications of performance,
such as the total number of calls to each procedure, the time spent in
each function, who called whom how often, etc. This information is not
correlated with the passage of time. For time-critical programs,
however, it is crucial to relate performance data to the events to
which the program is responding: it is not enough to know where a
program has spent its time, we must know when the program spent that
time. In addition, to take full advantage of a multiprocessor, we need
to know when the program is spending its time on which
processors. Rather than present such information after the program has
executed, we present it while the program is running, thus making it
easy to relate our interactions with the subject program to the
performance data being displayed.
This work was developed at Brown University and supported by a
grant from Sun Microsystems.
The text of this web document was taken from a paper by Bryan M. Cantrill and Thomas W. Doeppner Jr., Department
of Computer Science, Brown University, Providence, RI 02912-1910
Greg Foxman (gmf@cs.brown.edu)