30.01.2013 Views

TotalView Users Guide - CI Wiki

TotalView Users Guide - CI Wiki

TotalView Users Guide - CI Wiki

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Understanding<br />

Process/Thread<br />

Sets<br />

Setting Process and Thread Focus<br />

When you select a scope modifier, you are telling <strong>TotalView</strong> that when you<br />

press one of the remaining buttons on the toolbar, this element names the<br />

focus on which <strong>TotalView</strong> acts. For example, if you select a thread and then<br />

select Step, <strong>TotalView</strong> steps the current thread. If Process (workers) is<br />

selected and you select Halt, <strong>TotalView</strong> halts all processes associated with<br />

the current threads workers group. If you were running a multi-process program,<br />

other processes continue to execute.<br />

The Processes/Ranks Tab shows you which processes or ranks are members<br />

of the group. For more information, see “Using the Toolbar to Select a Target”<br />

on page 228.<br />

Setting Process and Thread Focus<br />

The previous sections emphasize the GUI; this section and the ones that follow emphasize<br />

the CLI. Here you will find information on how to have full asynchronous debugging<br />

control over your program. Fortunately, having this level of control is seldom necessary.<br />

In other words, don’t read the rest of this chapter unless you have to.<br />

When <strong>TotalView</strong> executes a command, it must decide which processes and<br />

threads to act on. Most commands have a default set of threads and processes<br />

and, in most cases, you won’t want to change the default. In the GUI,<br />

the default is the process and thread in the current Process Window. In the<br />

CLI, this default is indicated by the focus, which is shown in the CLI prompt.<br />

There are times, however, when you need to change this default. This section<br />

begins a rather intensive look at how you tell <strong>TotalView</strong> what processes<br />

and threads to use as the target of a command.<br />

Topics in this section are:<br />

� “Understanding Process/Thread Sets” on page 257<br />

� “Specifying Arenas” on page 259<br />

� “Specifying Processes and Threads” on page 259<br />

All <strong>TotalView</strong> commands operate on a set of processes and threads. This set<br />

is called a Process/Thread (P/T) set. The right-hand text box in windows that<br />

contain P/T set controls lets you construct these sets. In the CLI, you specify<br />

a P/T set as an argument to a command such as dfocus. If you’re using the<br />

GUI, <strong>TotalView</strong> creates this list for you based on which Process Window has<br />

focus.<br />

Unlike a serial debugger in which each command clearly applies to the only<br />

executing thread, <strong>TotalView</strong> can control and monitor many threads with<br />

their PCs at many different locations. The P/T set indicates the groups, processes,<br />

and threads that are the target of the CLI command. No limitation<br />

exists on the number of groups, processes, and threads in a set.<br />

<strong>TotalView</strong> <strong>Users</strong> <strong>Guide</strong>: version 8.7 257

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!