Menu

ddd/gdb on MPI-enabled code

Developers
2005-09-23
2013-10-17
  • Daniel L. Wang

    Daniel L. Wang - 2005-09-23

    Hi All,

    I've gone ahead and hacked together a change to mpncwa to help it support debugging.  Here's how I have it working right now.

    --Add a -S option to your mpncwa command-line, and run it with the usual mpirun prefix.  Each of the spawned mpi processes will sleep until they are woken later.
    -- Execute a script, which will attach ddd to each of the processes.  For now, this is done by "ddd_mpi.py | sh".
    -- Issue a "signal SIGUSR1" to each of the processes to wake them.  Each process should now resume normally.

    I should warn you that ddd_mpi.py works under mpd/mpich2 right now, but I can probably make a version that works for the other MPI implementations too. 

    Before I commit these changes or modify any of the other mpi code, is there something else wanted/desired from this interface? 

    -Daniel

     
    • Daniel L. Wang

      Daniel L. Wang - 2005-09-26

      Hi All,

      I've committed the changes to the remaining MPI-versions of the operators so that the "suspend" option is available on all of them.  Also, I've placed a script (bld/ddd_mpd.py in the source tree) to aid attaching debuggers to these suspended processes.  Currently, the script assumes the MPICH2 environment, where "mpdlistjobs" is available, so let me know if other platform support is desired.

      -Daniel

       

Log in to post a comment.