The POSIX Thread Trace Toolkit (PTT)
is a tool intended for expert NPTL developers
and developers of multi-threaded applications.
It should be able to generate a trace
describing the behavior of POSIX threads
during the execution of a program using NPTL functions.
It should provide a real help to understand and detect
complex situations (race conditions, contentions, dead-lock ...)
and to check threads behavior.
It should also help to optimize applications,
and to visualize programs dynamic.
Finally, it should help to analyze hangs in NPTL itself.
The trace tool starts when the traced program itself starts
The impact of PTT on performance is as low as possible.
A call to the trace mechanism shouldn't disturb
the application dynamic.
Generated traces should represent,
as well as possible,
the most important events which occur during the execution of programs.
Thus, it should give enough information to understand the event,
such as names, identifiers or adresses of NPTL objects
(threads, mutexes, barriers, cond var, semaphores)
concerned with the event,
and a reference to the moment when the event occured.
PTT provides the trace as a text file,
a raw file (to be analyzed by other programs),
or as a graphical visualization
thanks to the graphic tool