DDT¶
Description¶
This module enables the use of the Linaro Forge software
Linaro Forge (DDT) is a graphical source code debugging and analysis tool with the power that you need to take control of software bugs whenever they occur. It makes solving even the most complex multi-threaded or multi-process software problems straightforward.
Includes Linaro Forge (DDT + MAP) and Linaro Performance Reports tool for performance analysis
Environment Modules¶
Run module spider ddt to find out what environment modules are available for this application.
Environment Variables¶
- HPC_FORGE_DIR - installation directory
- HPC_FORGE_BIN - executable directory
Additional Usage Information¶
Using DDT¶
First, download the Linaro Forge remote client and install it on your computer:
https://www.linaroforge.com/freeTrial/
IMPORTANT NOTE: Please make sure that the version of Linaro Forge remote client installed on your computer is consistent with the version of Linaro Forge module you use on hipergator. The instructions below assume that the version of your Linaro Forge local client is version 23.0.
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
For newer builds of OpenMPI, you may need to use,
??? note "Expand this section to view reference example."
```
#!/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=hpg-dev
module load <modules_required_for_your_application>
module load ddt
#mpiexec ./main > resid.dat
ddt --connect --debug --log ddt-debug.log mpiexec ./main > resid.dat
```
Submit the job with
Next, start a desktop or console session in OnDemand.
Once both your debugging job and console or Desktop session are running you can connect:
1. Start the remote client GUI in the OnDemand session with
```
module load ddt
forge
```
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>@GUI_NODE.rc.ufl.edu
- Remote Installation Directory: /apps/forge/latest/
- Remote Script: <leave blank>
**Note that GUI_NODE corresponds to the compute node the job is running on**
4. Click "OK"
5. Click "Close"
6. 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.
### SSH Tunnel
If you would prefer to run the Forge client on your local computer you'll have to forward the port DDT listens on to your local computer. Once you know what compute node and port DDT is running on you can create an ssh tunnel from your local computer to the ddt instance. E.g.
Categories¶
programming