Difference between revisions of "DDT"

Jump to navigation Jump to search
Line 1: Line 1:

Revision as of 18:17, 7 July 2017

Allinea DDT is a graphical source code debugging analysis tool with the power that you need to take control of software bugs whenever they occur, making it simpler to solve even the most complex multi-threaded or multi-process software problems. This installation Includes Allinea DDT, MAP for performance analysis, and Allinea Reports for characterizing and understanding the performance of HPC applications.

This module enables the use of the Allinea DDT, MAP, and Reports tools.

Using DDT

First, download the Allinea Forge remote client and install it on your computer:

IMPORTANT NOTE: Please make sure that the version of Allinea Forge remote client installed on your computer is consistent with the version of Allinea Forge module you use on hipergator. The instructions below assume that the version of your Allinea Forge local client is version 7.0.4.

Create a batch submission script for the application you want to debug as though you were going to submit it to the queue. Be sure that you add the following sequence before the mpiexec command in your script:

ddt --connect --debug --log ddt-debug.log \

If you need more help creating the script, please use the example job script further down the page. Then, proceed with the steps below. Note that where "gui5" is specified, you can use "gui3", "gui4" or "gui6" as well.

  1. Start the remote client on your personal device
  2. In the "Remote Launch" pulldown menu, select "Configure..."
  3. Click "Add" and fill in the following information:
    Connection Name: ufrc-ddt
    Host Name: <username>@hpg2.rc.ufl.edu <username>@gui5.ufhpc
    Remote Installation Directory: /apps/allinea/forge/7.0.4
    Remote Script: <leave blank>
  4. Click "OK"
  5. Click "Close"
  6. On the main screen, select 'ufrc-ddt' from the Remote Launch pulldown menu
  7. From another window (PuTTY/Terminal/etc.), log into hpg2.rc.ufl.edu as you normally would.
  8. Modify the following command appropriately and use it to schedule your job:
cd /ufrc/<group>/<username>/example-directory 
sbatch example-job

It may take up to 90 seconds for your job to start; once it does, you will get a connection request from ddt running your job. Accept the request and you should be ready to start debugging your application.

Example Job Script

#SBATCH --job-name=example-job  #A name for your job
#SBATCH --output my_job-%j.out #Output File
#SBATCH --error my_job-%j.err  #Error File
#SBATCH --mail-type=FAIL,END  #What emails you want
#SBATCH --mail-user=<username>@ufl.edu   #Where
#SBATCH --nodes=1     #No. of processors requested
#SBATCH --ntasks=1    #Total no. of  processors
#SBATCH --cpus-per-task=1    #No. CPUs per task
#SBATCH --mem-per-cpu=2000mb   #Per processor memory request
#SBATCH --time=12:00:00       #Walltime in hh:mm:ss or d-hh:mm:ss
#SBATCH --partition=hpg2-dev

module load <modules_required_for_your_application>
module load ddt/7.0.4

#mpiexec  ./main > resid.dat
ddt --connect --debug --log ddt-debug.log \ 
   mpiexec  ./main > resid.dat

Required Modules


  • {{#lowercase:DDT}}

System Variables

  • HPC_{{#uppercase:DDT}}_DIR
  • HPC_{{#uppercase:DDT}}_BIN