Totalview

Totalview is a visual debugger that can be used on one of four Visit processes. Run it with -totalview [engine_ser, viewer, gui, or mdserver] to debug a serial version of the engine, the viewer, gui, or metadata server.

Those familiar with totalview know that it is normally launched using totalview executable_name. Because VisIt launches several processes using a wrapper script, the wrapper script needs to be aware of totalview and have an option for launching one component under the debugger.

BlueGene/Q

Debugging on BlueGene/Q using totalview can be a lifesaver. The best way to do it is to start your VisIt job in normal client/server mode and then attach to the running job using totalview. BlueGene/Q jobs, at least at LLNL, are launched via the srun command. In order to attach to the running job, you will need to know which login node is running srun for your job. This can be determined as follows (replace username with your real user name):

squeue | grep username

The above command will print out a numeric job id that can be used for jobid in the next command:

squeue -j jobid -tr -o "%.7i %B"

This will print the host name of the login/lac node where your srun program is running:

vulcanlac4

Now, ssh to the given node and run totalview. When the totalview window comes up, choose the option for Attach to running program. This will open a process chooser window. You'll want to choose the first srun process and continue. Once you continue, the totalview debugger window will open and you will be prompted whether you want to stop the parallel process. From there, you may debug the program as usual.

Totalview attach srun.png