The dstep command executes source lines; that is, it advances the program by steps (source lines). If a statement in a source line invokes a subfunction, the
dstep command steps into the function.
The optional num-steps argument defines the number of
dstep operations to perform. If you do not specify
num-steps, the default is 1.
The dstep command iterates over the arenas in the focus set by doing a thread-level, process-level, or group-level step in each arena, depending on the width of the arena. The default width is
process (
p).
If the width is process, the
dstep command affects the entire process that contains the thread being stepped. Thus, although the CLI is only stepping one thread, all other threads in the same process also resume executing. In contrast, the
dfocus t dstep command steps only the thread of interest (TOI).
TotalView examines that group and identifies each process having a thread stopped at the same location as the TOI. TotalView selects one matching thread from each matching process. TotalView then runs all processes in the group and waits until the
TOI arrives at its goal location; each selected thread also arrives there.
TotalView allows the entire process to run, and execution continues until the TOI arrives at its goal location. TotalView plants a temporary breakpoint at the goal location while this command executes. If another thread reaches this goal breakpoint first, your program continues to execute until the
TOI reaches the goal.
TotalView runs all threads in the process that are in that group to the same goal as the TOI. If a thread arrives at the goal that is not in the group of interest, this thread also stops there. The group of interest specifies the set of threads for which TotalView waits. This means that the command does not complete until all threads in the group of interest are at the goal.
Only the TOI is allowed to run. (This is not supported on all systems.)