Skip to main content

ddt

Versions and Availability

About the Software

Arm DDT is a cross-platform debugging tool, compatible with most flavors of Linux on Intel x86_64 (Xeon), IBM Power, NVIDIA CUDA, and Arm hardware.

Usage

  • DDT requires X-windows to function, so the local machine must have an X11 server installed and running.
  • ▶ X11 FAQ?

    From *nix

    Since ssh and X11 are already on most client machines running some sort of unix (Linux, FreeBSD, etc), one would simply use the following command:

    % ssh -X -Y username@remote.host.tdl
    

    Once successfully logged in, the following command should open a new terminal window on the local host:

    % xterm&
    

    An xterm window should appear. If this is not the case, email us.

    From Mac OS X

    An X11 service is not installed by default, but one is available for installation on the OS distribution disks as an add-on. An alternative would be to install the XQuartz version. Make sure the X11 application is running and connect to the cluster using:

    % ssh -X -Y username@remote.host.tdl
    

    From Windows

    Microsoft Windows does not provide an X11 server, but there are both open source and commercial versions available. You also need to install an SSH client. Recommended applications are:

    • MobaXterm - a Windows ssh client with X11 server integrated (recommended)
    • Xming - a Windows X11 server
    • PuTTY - a Windows ssh client

    When a PuTTY session is created, make sure the "X11 Forwarding Enabled" option is set, and that the X11 server is running before starting the session.

    Testing

    Once Xming and puTTY have been set up and in stalled, the following will provide a simple test for success:

    1. start Xming
    2. start puTTY
    3. connect to the remote host (make sure puTTY knows about Xming for this host)

    Once successfully logged in, the following command should open a new terminal window on the local host:

    % xterm&
    

    An xterm window should appear. If this is not the case, refer to "Trouble with Xming?" or email us.

    Note About Cygwin

    Cygwin is still a useful environment, but is too complicated and contains too many unnecessary parts when all one wants is to interface with remote X11 sessions.

    Advanced Usage

    The most important connection that is made is from the user's client machine to the first remote host. One may "nest" X11 forwarding by using the ssh -XY command to jump to other remote hosts.

    For example:

    1. on client PC (*nix or Windows), ssh to remotehost1

    2. on remotehost1 (presumably a *nix machine), ssh -XY to remotehost2

    3. on remotehost2 (presumably a *nix machine), ssh -XY to remotehost3

    ...

    8. on remotehost8 (presumably a *nix machine), ssh -XY to remotehost9

    9. on remotehost9, running an X11 application like xterm should propagate the remote window back to the initial client PC through all of the additional remote connects.

  • Compile the program with debugging enabled. This typically requires using the -O0 and -g command line switches.
  • When using a version of MVAPICH2 newer than 1.2, there are two versions of the MPI task manager to choose from. One uses the MPD daemons and the other uses a mechanism based on SSH. The latter is preferred as it gives much better scaling performance at high process counts. To specify its use, set the DDTMPIRUN environment variable to the absolute path of the launch manager you wish to use (if you use mpirun the mpd daemons must be managed manually):
  • $ export DDTMPIRUN=`which mpirun_rsh`
    
    or
    
    $ export DDTMPIRUN=`which mpirun`
    

Resources

Last modified: September 10 2020 11:58:50.