PTT software facilitates the analysis of correction and performance issues for multi-threaded applications, providing users with a greater understanding of their software.
PTT offers three distinct trace formats, including a machine-readable text format, a human-readable text format, and a graphical format. The graphical format is made possible with the Pajé interactive visualization tool. The PTT software is designed to cater to the needs of three specific types of users.
Firstly, developers who write multi-threaded applications are mainly interested in tracing NPTL routine calls and exits, along with detailed parameter information. They need the ability to easily switch between the original untraced NPTL and the traced library without needing to recompile their application.
Secondly, members of Linux support teams need to have a comprehensive understanding of the Linux kernel and glibc. This requires the ability to analyze traces generated from customers' sites, as well as seeing what happens inside NPTL.
Finally, the maintainer of glibc requires the ability to analyze NPTL behavior and fix any associated problems. PTT provides internal NPTL event traces, which can be incredibly useful for this task.
Some key features of PTT include the ability to trace a multi-threaded application without needing to recompile it. The trace is analyzed once the application is stopped, which allows for post-mortem analysis. The software offers three different trace formats, including a human-readable text format, a machine-readable text format, and a graphical format generated through Pajé.
Additional features offered by PTT include trace cut, which allows users to analyze specific parts of the trace; trace split, which enables users to split the trace into several files based on process or thread; trace filtering, which allows users to filter the trace based on various criteria such as event names, object names, or PID; log levels, which provide the ability to dynamically switch between different trace levels; and continuous recording, which only maintains the last traces of the execution.
PTT also offers the ability to handle large trace volumes, handle bad situations such as crashes or kill signals, and analyze thread contention. Overall, the PTT software is an incredibly robust and useful tool for anyone needing to analyze and understand multi-threaded application behavior.
Version 0.10.0: N/A