TotalView

Version System A System B System C
2020.0 (default) AU AU AU
2018.3 AU AU AU
2018.0 AU AU AU
2017.0 AU AU AU
2016.7 AU AU
2016.4 AU

Key:
AU = Available for academic users only.
― = Unavailable

Modules software package dynamically adjusts the environment settings for using applications, by using the module command. It also makes changing the environment settings easy when switching between different versions of applications. For details, see Modules.

Version Module File
2020.0 totalview/2020.0.25
2018.3 totalview/2018.3.8
2018.0 totalview/2018.0.5
2017.0 totalview/2017.0.12
2016.7 totalview/2016.07.22
2016.4 totalview/2016.04.08

You can see the list of module files available by using the module avail command.

TotalView is a GUI-based powerful debugger and supports various compiler environments.

  • Support for parallel applications
  • Memory debugging
  • Reverse debugging
  • Debugging by visual representation(program, variables, and MPI interprocess communication)

When compiling programs with TotalView, please use the debug option.

$ gcc -g test.c

Set up the environment by using the module command. (The module file you want is loaded.) This setting is not required if it is in the system A because the TotalView is already available after login.

$ module load totalview

To start TotalView, enter the following command in the Exceed onDemand . For details of xrun , see Interactive Processing .

xrun -tv  [option][filename [corefile]] [ -a [args]]

$ xrun -tv  ./a.out

The window for initial setting is displayed when startup TotalView. (If started without specifying the program, the dialog box for selecting the program is displayed.)

After making the necessary settings and clicking OK, the process window(as shown below) that is a main tool of debugging is displayed besides the main window(as shown above).
In the following example of the process window, Totalview is starting with setting a breakpoint on the third line by clicking a line number.

To start TotalView, enter the following command in the Exceed onDemand . For details of xrun , see Interactive Processing .

xrun totalview [option][filename [corefile]] [ -a [args]]

$ xrun totalview

To start the CUI mode of Totalview, specify the target program for debugging and then enter the following command. For details of tssrun , see Interactive Processing .

tssrun -tv  [option][filename [corefile]] [ -a [args]]

$ tssrun -tv  ./a.out

The help command displays the main commands.

d1.<> help
Help with no arguments prints this message.
Help with an argument prints information about one topic.
Help is available on the following specific commands:
  alias     capture   dactions  dassign   dattach   dbarrier  dbreak    dcache
  dcheckpoint         dcont     ddelete   ddetach   ddisable  ddlopen   ddown
(The rest is omitted.)

The descriptions of commands can be seen by executing with specifying the command name.

d1.<> help dattach
dattach [ -g GID ] [ -r host ] [ -c corefile ] [ -rank rank] [ -e ]
                [ -replay | -no_replay]
                [ -[no_|ask_]attach_parallel ] filename [ pids ... ]
       Default alias: at
(The rest is omitted.)

##Start TotalView
% totalviewcli ./a.out
Linux x86_64 TotalView 8.9.0-0
Copyright 2007-2010 by TotalView Technologies, LLC. ALL RIGHTS RESERVED.
Copyright 1999-2007 by Etnus, LLC.
(The halfway details are omitted.)
Indexing 4544 bytes of DWARF '.eh_frame' symbols from '/lib64/ld-linux-x86-64.so.2'...done
##Check the source file
d1.<> dlist
   3   main()
   4   {
   5           int i,sum;
   6
   7           sum=0;
   8           for(i=1;i<=10;i++)
   9           {
  10                   sum+=i;
  11           }
  12           printf("%d\n",sum);
  13
  14   }
  15
##Set a breakpoint at line 10
d1.<> dbreak 10
1
##Start the program
d1.<> drun
Thread 1.1 has appeared
Created process 1 (19354), named "a.out"
d1.<> Thread 1.1 hit breakpoint 1 at line 10 in "main"
##Show the variable
d1.<> dprint sum
 sum = 0x00000000 (0)
##Restart the program
d1.<> dcon
Thread 1.1 hit breakpoint 1 at line 10 in "main"
d1.<> dprint sum
 sum = 0x00000001 (1)
d1.<> dcon
Thread 1.1 hit breakpoint 1 at line 10 in "main"
d1.<> dprint sum
 sum = 0x00000003 (3)

When debugging an MPI program, you need to select the Parallel tab in the dialog of the initial setup, and then select the Parallel system according to MPI used in each system. If you specified the -tv option when using the -xrun command, the Parallel system is set automatically. For details of xrun , see Interactive Processing .

System Parallel system
A Cray aprun
B,C Intel MPI hydra

After logging in with Exceed onDemand, you can debug an MPI program with GUI by executing below.

xrun -tv -A p=4 ./a.out


Copyright © Academic Center for Computing and Media Studies, Kyoto University, All Rights Reserved.