Barrier
Select this radio button to set a process barrier breakpoint. Process barrier breakpoints are triggered when execution arrives at a line or instruction.
Barrier breakpoints are most often used to synchronize a set of processes and threads. When a thread reaches a barrier, it stops, just as it does for a breakpoint. The difference is that TotalView prevents—that is, holds—each thread reaching the barrier from responding to resume commands (for example, step, next, or go) until all threads in the affected set arrive at the barrier. When all threads reach the barrier, TotalView considers the barrier to be satisfied and releases these threads. They are just released; they are not continued. That is, they are left stopped at the barrier. If you now continue the process, those threads stopped at the barrier also run. This is in addition to any other threads that were not participating with the barrier.
If a process is stopped and then continued, the held threads, including the ones waiting on an unsatisfied barrier, do not run. Only the unheld threads run.
When Hit, Stop
Indicate which other threads TotalView should stop when execution reaches the breakpoint, as follows:
Group: Stop all threads in the current thread’s control group.
Process: Stop all threads in the current thread’s process.
Thread: Only stop this thread.
After all processes or threads reach the barrier, TotalView releases all held threads. (Released means that these threads and processes can now run.)
When Done, Stop
Tells TotalView what else it should stop. The meaning of these buttons is the same as the buttons in the When Hit, Stop area.
Satisfaction group
For even more control over what is stopped, you can indicate a satisfaction set. This set indicates which threads must be held before any of these held threads can be released. That is, the barrier is satisfied when all of the indicated threads are held. Your selection here tells TotalView that the satisfaction set consists of all threads in the current thread’s Share, Workers, or Lockstep group.