Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Open MPI User's mailing list

Subject: Re: [OMPI users] Question about restart
From: Yaakoub El Khamra (yye00_at_[hidden])
Date: 2009-04-22 16:09:52


Incidentally, if I add a check for the value base->sig.sh_old, that it
is not NULL, and recompile, everything works fine. I am concerned this
is just fixing a symptom rather than the root of the problem.

if(base->sig.sh_old != NULL)
  free(base->sig.sh_old);

is what I used.

Regards
Yaakoub El Khamra

On Wed, Apr 22, 2009 at 2:13 PM, Yaakoub El Khamra
<yye00_at_[hidden]> wrote:
> Greetings
> I am trying to get the checkpoint/restart to work on a single machine
> with openmpi 1.3 (also tried an svn check-out) and ran into a few
> problems. I am guessing I am doing something wrong, and would
> appreciate some help.
>
> I built openmpi with:
>  ./configure --prefi=/usr/local/openmpi-1.3/ --enable-picky
> --enable-debug --enable-mpi-f77 --enable-mpi-f90 --enable-mpi-profile
> --enable-mpi-cxx --enable-pretty-print-stacktrace --enable-binaries
> --enable-trace --enable-static=yes --enable-debug
> --with-devel-headers=1 --with-mpi-param-check=always --with-ft=cr
> --enable-ft-thread --with-blcr=/usr/local/blcr/
> --with-blcr-libdir=/usr/local/blcr/lib --enable-mpi-threads=yes
>
> I am using blcr 0.8.1 configured with:
>  ./configure --prefix=/usr/local/blcr/ --enable-debug=yes
> --enable-libcr-tracing=yes --enable-kernel-tracing=yes
> --enable-testsuite=yes --enable-all-static=yes --enable-static=yes
>
> Checkpoint works fine, without any problems, I run with:
>  mpirun  -np 2 -mca ft_cr_enabled 1 -mca ompi_cr_verbose 1  -am
> ft-enable-cr -mca crs_verbose 1 -mca crs_blcr_verbose 1  matmultf.exe
>
> I am able to checkpoint without any problems using ompi-checkpoint
> --status --term <pid>
> but when I try to restart, I get the following error:
>
> [yye00_at_localhost FTOpenMPI]$ ompi-restart -v  ompi_global_snapshot_23858.ckpt
> [localhost.localdomain:24394] Checking for the existence of
> (/home/yye00/ompi_global_snapshot_23858.ckpt)
> [localhost.localdomain:24394] Restarting from file
> (ompi_global_snapshot_23858.ckpt)
> [localhost.localdomain:24394]    Exec in self
> malloc debug: Invalid free (signal.c, 304)
> malloc debug: Invalid free (signal.c, 304)
> [localhost:23860] *** Process received signal ***
> [localhost:23860] Signal: Bus error (7)
> [localhost:23860] Signal code:  (2)
> [localhost:23860] Failing at address: 0x7fcbb737ef88
> [localhost:23860] [ 0] /lib64/libpthread.so.0 [0x32d720f0f0]
> [localhost:23860] [ 1] /usr/local/openmpi-1.3_svn/lib/libmpi.so.0
> [0x7fcbbd1eccae]
> [localhost:23860] [ 2] /usr/local/openmpi-1.3_svn/lib/libmpi.so.0
> [0x7fcbbd1ed5ba]
> [localhost:23860] [ 3] /usr/local/openmpi-1.3_svn/lib/libmpi.so.0
> [0x7fcbbd1ed745]
> [localhost:23860] [ 4]
> /usr/local/openmpi-1.3_svn/lib/libopen-pal.so.0(opal_progress+0xbc)
> [0x7fcbbcba2aa0]
> [localhost:23860] [ 5] /usr/local/openmpi-1.3_svn/lib/libopen-pal.so.0
> [0x7fcbbcbdead1]
> [localhost:23860] [ 6] /usr/local/openmpi-1.3_svn/lib/libopen-pal.so.0
> [0x7fcbbcbde8e2]
> [localhost:23860] [ 7]
> /usr/local/openmpi-1.3_svn/lib/libopen-pal.so.0(opal_crs_blcr_checkpoint+0x19c)
> [0x7fcbbcbde17c]
> [localhost:23860] [ 8]
> /usr/local/openmpi-1.3_svn/lib/libopen-pal.so.0(opal_cr_inc_core+0xb2)
> [0x7fcbbcba45e9]
> [localhost:23860] [ 9] /usr/local/openmpi-1.3_svn/lib/libopen-rte.so.0
> [0x7fcbbced1d9d]
> [localhost:23860] [10]
> /usr/local/openmpi-1.3_svn/lib/libopen-pal.so.0(opal_cr_test_if_checkpoint_ready+0x11b)
> [0x7fcbbcba4509]
> [localhost:23860] [11] /usr/local/openmpi-1.3_svn/lib/libopen-pal.so.0
> [0x7fcbbcba4bc2]
> [localhost:23860] [12] /lib64/libpthread.so.0 [0x32d72073da]
> [localhost:23860] [13] /lib64/libc.so.6(clone+0x6d) [0x32d66e62bd]
> [localhost:23860] *** End of error message ***
> --------------------------------------------------------------------------
> mpirun noticed that process rank 1 with PID 24396 on node
> localhost.localdomain exited on signal 7 (Bus error).
> --------------------------------------------------------------------------
>
> running strace on the ompi-restart did not provide any useful
> information. Any suggestions are greatly appreciated. Incidentally,
> looking at the signal.c line 304, it is a deallocation subroutine in
> opal, it is the evsignal_dealloc subroutine, the actual line is the
> "free(base->sig.sh_old);" line . I am about to add debug statements to
> that subroutine and see if I can get further information, but was
> hoping the problem is more user-related than code-related.
>
>
> Regards
> Yaakoub El Khamra
>