Getting Started with TotalView® : Working with Multi-processes and Multi-threads
Working with Multi-processes
and Multi-threads
TotalView’s real strength is in debugging multi-process, multi-threaded programs, many of which are tremendously complex.
Here’s a brief rundown of TotalView’s primary features that support this kind of complicated parallel computing:
*Organizing your processes and threads into groups, making it possible to debug programs running thousands of processes and threads across hundreds of computers.
*Placing a server on each remote processor as it is launched that then communicates with the main TotalView process. This debugging architecture gives you a central location from which you can manage and examine all aspects of your program.
*Automatically bringing any threads or processes spawned by your program under TotalView’s control, avoiding the need to run multiple debuggers.
*Allowing you to focus on, run, set breakpoints on, and display individual processes, threads, or groups.
For example, to act on a particular process, select it from the toolbar’s target pulldown menu, Figure 18. This defines the focus, so when you select the command Go or Step, TotalView knows what to act on.
Figure 18: Selecting a Target from the Toolbar Pulldown
See More
*On threading and multi-process applications in general: Debugging Multi-process and Multi-threaded Programs” in the TotalView User Guide
*On how TotalView organizes processes and threads into groups: About Threads, Processes, and Groups” in the TotalView User Guide
*Tips on parallel debugging: Debugging Strategies for Parallel Applications” in the TotalView User Guide