Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: [OMPI devel] assert in opal_datatype_is_contiguous_memory_layout
From: Eric Chamberland (Eric.Chamberland_at_[hidden])
Date: 2013-04-05 17:10:37


Hi all,

(Sorry, I have sent this to "users" but I should have sent it to "devel"
list instead. Sorry for the mess...)

I have attached a very small example which raise an assertion.

The problem is arising from a process which does not have any element to
write in a file (and then in the MPI_File_set_view)...

You can see this "bug" with openmpi 1.6.3, 1.6.4 and 1.7.0 configured with:

./configure --enable-mem-debug --enable-mem-profile --enable-memchecker
  --with-mpi-param-check --enable-debug

Just compile the given example (idx_null.cc) as-is with

mpicxx -o idx_null idx_null.cc

and run with 3 processes:

mpirun -n 3 idx_null

You can modify the example by commenting "#define WITH_ZERO_ELEMNT_BUG"
to see that everything is going well when all processes have something
to write.

There is no "bug" if you use openmpi 1.6.3 (and higher) without the
debugging options.

Also, all is working well with mpich-3.0.3 configured with:

./configure --enable-g=yes

So, is this a wrong "assert" in openmpi?

Is there a real problem to use this example in a "release" mode?

Thanks,

Eric