TOTALVIEW Majdi Baddourah June 4, 2002 NERSC
Objective How to use totalview MPI codes OpenMp Codes
TOTALVIEW Debugging tool Supported by ETNUS Works very well most of the time Line mode and x-windows mode Used to debug FORTRAN and C
Usage module load totalview mpxlf –g main.f totalview poe –a./a.out –nodes 2 –procs 32
TOTALVIEW Window
Program Window
File Options
Process Options
Action Point Options
Tools Options
POE Window
Source Code Window
Set Breakpoint right mouse click left mouse click
Breakpoint options
Start Exectution left mouse click
See Other Processors left mouse click
Setting Evaluation Function
right mouse click
Evaluation Function
Evaluation Functions
right mouse click
Variable Value
Looking at the vector x
Looking at a Slice of an Array
Looking at Large Arrays parameter(n= ) real*8 a(n) do i = 1, n a(i) = float(i) enddo write(*,*)' a(',n,')=',a(n) stop end You can view the content of the variable A without problems. You can not look at statistics or visualize the variable.
Message Queue
C Program
Structure Value
Looking at Structure
Watch Point
Unconditional Watchpoint
Checking the Value
Attaching a Running Job Run Totalview using this command totalview & poe./a.out –nodes 2 –procs 32 Click on the poe job
Attaching a Job
Running the Job Click Go
Detaching a Job Click detach
OpenMp setenv OMP_NUM_THREADS 4 module load totalview
Compile xlf90_r -o a.out -g -qfixed -qsmp=omp -qstrict nowait.f -bmaxstack:0x Dive on J
Compile with noopt xlf90_r -o a.out -qfixed -qsmp=omp -g -qstrict nowait.f -qsmp=noopt -bmaxstack:0x
OpenMp right mouse click Click go
Threads 3 Dive on b
Shared variables
OpenMp Dive on j
Private Variables
TOTALVIEW X-Resources totalview*searchPath:/usr/common/homes/m/majdi/NETCDF4/src/libsrc, \ /usr/common/homes/m/majdi/NETCDF4/src/fortran, \ /usr/common/homes/m/majdi/NETCDF4/src/f90, \ /usr/common/homes/m/majdi/NETCDF4/src, \ /scratch/scratchdirs/majdi, /scratch/scratchdirs/majdi/NimRot