I am running a parallel application over 128 cores and it always crashed in the core#48. Is there a way to use IDB in core#48 only? The IDB may be not a good debugger for parallel application.
which version of IDB are you using and is your parallel application using shared memory (OpenMP, Intel(R) TBB, ...) or distributed memory (MPI) technology?
Thank you & best regards,
The parallel application (Fortran) is using MPI and is compile with openmpi 1.4.3. I assume that the gdb is included in the distribution of Intel compiler. The version of Intel compiler is 11.1.046.
IDB is not validated against Open MPI (started via mpiexec/mpirun); it only supports Intel(R) MPI. In addition, 11.1.046 is quite old and IDB has seen lots of stability improvements over the last versions, also regarding Intel(R) MPI with the last update: Intel(R) Composer XE 2011 Update 12.
However, debugging of individual processes should work. If you want to do that (e.g. for just one process on a node) you can do the following:
- Start the MPI processes
- Log into the host which runs the process you like to debug (rank/host 48 in your example)
- Start IDB and attach to the running process
In that case you also need to make sure that the process does not run away before you attach, e.g. via a busy wait in the code.
GDB is not part of our suites/products. You need to download it separately.