From brockp at umich.edu Wed May 11 19:09:45 2011 From: brockp at umich.edu (Brock Palen) Date: Wed, 11 May 2011 14:09:45 -0400 Subject: [padb-users] Strange behavior with padb orte and IMB Message-ID: I am using padb to poke at IMB trying to track down an issue we are having, When I poke padb at other code with options like: padb -Ormgr=orte --all --mpi-watch --watch -Owatch-clears-screen=no I get a nice clean print out of all the state of the MPI processes. When I run this against IMB though I get: einner: Use of uninitialized value in hash element at /home/software/rhel5/padb/3.3/bin/padb line 9141, line 727. einner: Use of uninitialized value in hash element at /home/software/rhel5/padb/3.3/bin/padb line 9141, line 727. ,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, Every iteration, I have thousands of those errors printed, Any idea why this would be? I have poked padb at a number of codes and never seen this. Brock Palen www.umich.edu/~brockp Center for Advanced Computing brockp at umich.edu (734)936-1985 From ashley at pittman.co.uk Tue May 17 22:06:28 2011 From: ashley at pittman.co.uk (Ashley Pittman) Date: Tue, 17 May 2011 22:06:28 +0100 Subject: [padb-users] Strange behavior with padb orte and IMB In-Reply-To: References: Message-ID: <7C3A858B-D5CB-411F-B371-9EC091BBE77E@pittman.co.uk> On 11 May 2011, at 19:09, Brock Palen wrote: > Every iteration, I have thousands of those errors printed, > Any idea why this would be? I have poked padb at a number of codes and never seen this. This looks to be some logic which is in the stack trace reporting code but didn't make it over to the mpi_watch mode. Occasionally gdb reports stack frames without an associated name which is what is triggering this warning. It's likely to be triggered by IMB rather than you application because of differences in complier flags. This patch should remove the warning, it's done against the trunk but also applies (with offset) to the 3.3 branch. Index: src/padb =================================================================== --- src/padb (revision 436) +++ src/padb (working copy) @@ -9219,7 +9219,7 @@ my @frames = @{ $thread->{frames} }; foreach my $i ( reverse 0 .. $#frames ) { my $frame = $frames[$i]; - if ( defined $fns->{fns}{ $frame->{func} } ) { + if ( defined $frame->{func} and defined $fns->{fns}{ $frame->{func} } ) { $fnmode = $fns->{fns}{ $frame->{func} }; last; } In general I consider it safer to run perl with warning on and in strict mode, neither of these are necessary but I prefer to be pro-active about checking the code is behaving exactly as I believe it should, with this type of error you can remove the warnings simply by disabling strict mode and or warnings however releases are made with warnings enabled so I do appreciate it if you report these. Ashley. -- Ashley Pittman, Bath, UK. Padb - A parallel job inspection tool for cluster computing http://padb.pittman.org.uk