Allinea DDT

References

Allinea DDT Website

Allinea DDT User Guide

Availability

You can use Allinea DDT to debug up to full machine size on the BG/Q systems (Mira, Cetus, Vesta) or the data analytics cluster (Cooley).  There is no limit to the number of users; however, users have to share the available license tokens.

 

Step 1: Start up DDT

DDT may be started in two ways.

  1. Via Remote Client from your laptop or workstation (Recommended)
  2. Running the DDT client on a login node and displaying back to you via X11.

 

Option A: Remote Client (Recommended)

This method is best for remote use of DDT because the GUI client runs directly on your laptop or workstation.  This has much lower remote bandwith requirements than the other method.

  1. The Allinea download page is at http://www.allinea.com/products/downloads/download-allinea-ddt-and-allinea-map  (Note: There is a link near the bottom of the page for versions prior to the latest release.)
    1. For Mac or Windows, download the "Remote Client" for your OS.
    2. For Linux, download the full version of DDT for your distro.  Even if you do not have a license to run on your local machine, it can be used as a remote client.
    3. After installation, run the application and select Remote Launch->Configure to set up a configuation to connect to the login node.
       

      DDT configure new remote launch

       
  2. When prompted for the "Remote Installation Directory", type in /soft/debuggers/ddt for the default version of ddt (corresponding to the soft key +ddt).  For an alternate version, use that path instead (e.g. /soft/debuggers/ddt-4.2.1-36714-2014-06-03).
     

    DDT Remote Launch Settings

     
  3. Click "Test Remote Launch" and if prompted, enter your PIN + cryptocard code.
  4. Click "OK" and you will return to the main window.  When you are connected, you will see the license info in the lower left corner, and the "Available Tools" box will show the support expiration date for Allinea DDT.
    DDT remote connection established
  5. If there is a version mismatch because the client you installed is newer than the installation on the login node, you will need to install an earlier version of the remote client.  At the bottom of the Allinea download page (http://www.allinea.com/products/downloads/download-allinea-ddt-and-allinea-map) you should find a link e.g. "Remote client downloads for older versions". 

 

Option B: Running directly on login node

This option will run the DDT client on the login node and display back to your desktop via X11.   Compared to Option A, interaction with DDT will be much more sensitive to bandwith between your machine and ALCF.

You need to have an X server running on your laptop or workstation and your DISPLAY set.

  1. Connect to an ALCF login node via ssh -X or ssh -Y to tunnel your DISPLAY.
  2. Add the “+ddt” key to your ~/.soft file (before the @default), e.g.:
       +ddt
       @default

    Important: After editing ~/.soft, you must do a “resoft” or log out and back in again. Check that ddt is in your PATH by typing “which ddt.” The key will give you the default (usually latest) version of DDT. To choose a specific version, use the key for that version. Available software keys may be listed by typing “softenv.”

  3. Run ddt from your shell prompt:

     > ddt

The DDT GUI should appear on your desktop display shortly.

 

Step 2: Initiating a debug run

Once you have started up DDT (see Step 1 above),  you can initiate a debug run by following these steps:

 
 
  1. From the main Allinea DDT window, select "Run":
     

    DDT start a run

     
  2. Next, you will see a window with options for the run.
    • Provide information about the application to be debugged: executable name and path, arguments, input files, and working directory.
    • Select the number of nodes and the number of processes per node in the MPI section.
    • Important: Enable the checkbox "Submit to Queue"
    • Click "Change" (or "Configure") and "Parameters" for additonal settings (continued below)
       

      DDT run options

       
    • The "Change" button brings up the Preferences window with the Job Submission tab.  For BG/Q systems, select the submission template /soft/debuggers/ddt-site/templates/alcf-bgq.qtf  (Note: this is an updated location different than in the screen shot below).  For Cooley, select /soft/debuggers/ddt-site/templates/alcf-cluster.qtf

      DDT job submission settings
    • The "Edit Queue Parameters" button will bring up the settings for your Project name and the Wall Clock time to be used for the debugging job:
       
      DDT queue parameters
       
    • Click the "System" tab on the left.  Check "Use shared symbol cache" and select Maximum debuggers per node 32.  (IMPORTANT)
       
       
  3. Close all the pop-up windows for variables settings and click “Submit” to submit a Cobalt job for your debugging session.
     

    DDT run options

     
  4. The display will show your job in the queue.  Your debugging session will not begin until the job reaches the head of the queue and enters the Running state.
    DDT job in queue
     
  5. When the job starts running, DDT will show the progress of connecting to the compute node processes:DDT connecting to parallel job
     
  6. When the connection is complete, your program will be ready to start execution with the cursor just prior to the first line of main(). To start the program, click on the green arrow (“Play/continue”).

    DDT ready to go