Difference between revisions of "DDT"
Moskalenko (talk | contribs) |
Moskalenko (talk | contribs) |
||
Line 24: | Line 24: | ||
'''IMPORTANT NOTE''': | '''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. | + | 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 <code>mpiexec</code> command in your script: | 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 <code>mpiexec</code> command in your script: | ||
Line 30: | Line 30: | ||
<pre>ddt --connect --debug --log ddt-debug.log \</pre> | <pre>ddt --connect --debug --log ddt-debug.log \</pre> | ||
− | + | Please use the following example if needed: | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<source lang=bash> | <source lang=bash> | ||
#!/bin/bash | #!/bin/bash | ||
Line 70: | Line 53: | ||
mpiexec ./main > resid.dat | mpiexec ./main > resid.dat | ||
</source> | </source> | ||
+ | |||
+ | Submit the job with | ||
+ | <source lang=bash>cd /ufrc/<group>/<username>/example-directory | ||
+ | sbatch example-job | ||
+ | </source> | ||
+ | |||
+ | |||
+ | Next, start a [[GUI Programs|gui job]] of any kind on HiPerGator e.g. | ||
+ | |||
+ | launch_gui session -e xterm -t 8 | ||
+ | to get an 8-hour gui session. | ||
+ | |||
+ | Once both your debugging job and a gui job are running you can connect: | ||
+ | |||
+ | # Start the remote client GUI on your personal device | ||
+ | # In the "Remote Launch" pulldown menu, select "Configure..." | ||
+ | # Click "Add" and fill in the following information: <br> '''Connection Name:''' ufrc-ddt <br> '''Host Name:''' <username>@GUI_NODE.rc.ufl.edu<br> '''Remote Installation Directory:''' /apps/allinea/forge/7.0.4 <br> '''Remote Script:''' <leave blank> <br>Note that GUI_NODE corresponds to the gui server the gui job is running on e.g. i21a-s3. | ||
+ | # Click "OK" | ||
+ | # Click "Close" | ||
+ | # On the main screen, select 'ufrc-ddt' from the Remote Launch pulldown menu | ||
+ | |||
+ | You will get a connection request from ddt running your job. Accept the request and you should be ready to start debugging your application. | ||
<!--Modules--> | <!--Modules--> |
Revision as of 21:15, 14 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 \
Please use the following example if needed:
#!/bin/bash
#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
Submit the job with
cd /ufrc/<group>/<username>/example-directory
sbatch example-job
Next, start a gui job of any kind on HiPerGator e.g.
launch_gui session -e xterm -t 8
to get an 8-hour gui session.
Once both your debugging job and a gui job are running you can connect:
- Start the remote client GUI on your personal device
- In the "Remote Launch" pulldown menu, select "Configure..."
- Click "Add" and fill in the following information:
Connection Name: ufrc-ddt
Host Name: <username>@GUI_NODE.rc.ufl.edu
Remote Installation Directory: /apps/allinea/forge/7.0.4
Remote Script: <leave blank>
Note that GUI_NODE corresponds to the gui server the gui job is running on e.g. i21a-s3. - Click "OK"
- Click "Close"
- On the main screen, select 'ufrc-ddt' from the Remote Launch pulldown menu
You will get a connection request from ddt running your job. Accept the request and you should be ready to start debugging your application.
Required Modules
Serial
- {{#lowercase:DDT}}
System Variables
- HPC_{{#uppercase:DDT}}_DIR
- HPC_{{#uppercase:DDT}}_BIN