TOTALVIEW Majdi Baddourah June 4, 2002 NERSC. Objective How to use totalview MPI codes OpenMp Codes

Preview:

Citation preview

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

Setting Evaluation Function

right mouse click

Evaluation Function

Evaluation Functions

Evaluation Functions

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=10 000 000)real*8 a(n)do i = 1, n a(i) = float(i)enddowrite(*,*)' 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

C Program

Structure Value

Looking at Structure

Watch Point

Unconditional Watchpoint

Checking the Value

Attaching a Running Job

Run Totalview using this commandtotalview &poe ./a.out –nodes 2 –procs 32Click 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:0x70000000

Dive on J

Compile with noopt

xlf90_r -o a.out -qfixed -qsmp=omp -g -qstrict nowait.f -qsmp=noopt -bmaxstack:0x70000000

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

Recommended