[Omp] Good OpenMP Debuggers?

Meadows, Lawrence F lawrence.f.meadows at intel.com
Thu Jul 6 07:02:11 PDT 2006


Michael:

A lot of it seems to depend on getting the right version match between
debuggers and compilers. I've
had pretty good luck with most of the debuggers you list at various
times with the "right" version of the compilers on the "right"
platform, and bad luck at other times.

Most compilers (PGI excepted) "outline" parallel regions; so usually
debugging inside a parallel region is like debugging a subroutine.
So if the compiler generates good symbolic information, then the
debugger doesn't have a lot of extra work to do for local variables.
Going up-scope to shared variables can be harder.

Giving the illusion that a parallel region is called from the lexical
point where it occurs is harder; usually the code representing
the region is called from some kind of "idle" loop in a slave thread.
Totalview tries to do the right thing with that, and I'm sure that
other debuggers do so as well; but it is still a fiction as far
as what is really going on. This is probably why you are having
trouble stepping into parallel regions.

Finally, different platforms have different levels of control
per-thread. So that makes things harder. For example, single
stepping a thread can be a painful experience. gdb seems to
be particularly annoying here.

Good luck. Just remember that printf() is your friend, but hope
it doesn't take a lock :)

Larry

>-----Original Message-----
>From: omp-bounces at openmp.org [mailto:omp-bounces at openmp.org] 
>On Behalf Of Michael Suess
>Sent: Thursday, July 06, 2006 6:41 AM
>To: Omp at openmp.org
>Subject: [Omp] Good OpenMP Debuggers?
>
>Hi,
>
>I have been searching for a good OpenMP debugger recently, and 
>was not really 
>satisfied with the results so far. Some did not let me step through my 
>parallel regions, some did not show my private variables and some just 
>crashed constantly or did not execute my programs correctly at 
>all. I have 
>tried Totalview, DDT, the Sun Studio debugger and the Portland Group 
>debugger. Oh and gdb and the Intel Debugger I have tried some 
>time ago. Have 
>I missed any good ones? Or am I just too stupid to use them 
>correctly?? 
>
>Some of these debuggers do a really great job with 
>MPI-programs, yet threaded 
>debugging seems to be a totally different story. What do you 
>use if you have 
>to debug OpenMP-code?
>
>Thanks for your answers,
>Michael Süß
>_______________________________________________
>Omp mailing list
>Omp at openmp.org
>http://openmp.org/mailman/listinfo/omp
>


More information about the Omp mailing list