[MOAB-dev] problem with pcomm

Lorenzo Alessio Botti lorenzoalessiobotti at gmail.com
Wed Dec 2 10:20:45 CST 2015



=====================================
   MOAB 4.8.2: test/test-suite.log
=====================================

# TOTAL: 35
# PASS:  35
# SKIP:  0
# XFAIL: 0
# FAIL:  0
# XPASS: 0
# ERROR: 0

.. contents:: :depth: 2

This is the sole failure.

==============================================
   MOAB 4.8.2: test/parallel/test-suite.log
==============================================

# TOTAL: 11
# PASS:  10
# SKIP:  0
# XFAIL: 0
# FAIL:  1
# XPASS: 0
# ERROR: 0

.. contents:: :depth: 2

FAIL: parallel_hdf5_test
========================

Running test_write_elements ...
Running test_write_elements ...
Warning: acis file has sequence numbers!
Warning: acis file has sequence numbers!
Warning: acis file has sequence numbers!
Running test_write_shared_sets ...
Running test_write_shared_sets ...
Warning: acis file has sequence numbers!
Warning: acis file has sequence numbers!
Warning: acis file has sequence numbers!
Running test_var_length_parallel ...
Running test_var_length_parallel ...
Running test_read_elements ...
Running test_read_elements ...
Running test_read_elements_by_rank ...
Running test_read_elements_by_rank ...
Running test_read_tags ...
Running test_read_tags ...
Running test_read_global_tags ...
Running test_read_global_tags ...
Running test_read_sets ...
Running test_read_sets ...
Running test_read_sets_bcast_dups ...
Running test_read_sets_bcast_dups ...
Running test_read_sets_read_dups ...
Running test_read_sets_read_dups ...
Running test_read_bc_sets ...
Running test_read_bc_sets ...
Fatal error in MPI_Reduce: Invalid datatype, error stack:
MPI_Reduce(1258): MPI_Reduce(sbuf=0x7fff533896d4, rbuf=0x7fff533896c8, count=3, MPI_DATATYPE_NULL, MPI_SUM, root=0, MPI_COMM_WORLD) failed
MPI_Reduce(1168): Datatype for argument datatype is a null datatype
FAIL parallel_hdf5_test (exit status: 3)


The whole code, without any MPI initialisation,

#include "moab/ParallelComm.hpp"
#include "MBParallelConventions.h"
#include "MBTagConventions.hpp"
#include "moab/Core.hpp"
#include "moab_mpi.h"

using namespace moab;

int main(int argc, char **argv)
{
  Core moab;
  Interface& imoab = moab;

  ParallelComm* pcomm = ParallelComm::get_pcomm(&moab, 0);
  if (0 == pcomm)
  {
    pcomm = new ParallelComm(&imoab, MPI_COMM_WORLD);
  }
  delete pcomm;
  return EXIT_SUCCESS;
};

~         

This is the Makefile
MOAB_LIB_DIR = /Users/ihabia/src2/moab-4.8.2/moab/
include $(MOAB_LIB_DIR)/lib/moab.make

%.o : %.cpp
        @echo "Compiling ("$(CXX)") "$<" "
        @$(CXX) ${MOAB_INCLUDES} -c $< -o $@

CXX = mpicxx -O2 -DNDEBUG

objects := $(patsubst %.cpp,%.o,$(wildcard ./*.cpp))

mbtestrun : $(objects)
        @echo "Linking "$(CURDIR)"/"$@
        @$(CXX) $(objects) -o $@ $(MOAB_LIBS_LINK) 

.PHONY : clean 

clean :
        @rm $(objects)


and this is mob.make

# The values below are for an un-installed copy of MOAB used directly
# from its build build directory.  These values will be overridden below
# for installed copies of MOAB.
MOAB_LIBDIR = /Users/ihabia/src2/moab-4.8.2/src/.libs
MOAB_INCLUDES = -I/Users/ihabia/src2/moab-4.8.2/src \
                -I/Users/ihabia/src2/moab-4.8.2/src \
                -I/Users/ihabia/src2/moab-4.8.2/src/oldinc \
                -I/Users/ihabia/src2/moab-4.8.2/src/parallel \
                -I/Users/ihabia/src2/moab-4.8.2/src/parallel

MOAB_INCLUDES +=

MOAB_CPPFLAGS =        -I/Users/ihabia/src2/hdf5-1.8.16/hdf5//include -isystem /Users/ihabia/src2/hdf5-1.8.16/hdf5//include
MOAB_CXXFLAGS =  -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align  -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -stdlib=libstdc++ -O2 -DNDEBUG
MOAB_CFLAGS =  -Wall -pipe -pedantic -Wno-long-long -Wextra -Wcast-align  -Wpointer-arith -Wformat -Wformat-security -Wshadow -Wunused-parameter -O2 -DNDEBUG
MOAB_FFLAGS =
MOAB_FCFLAGS =
MOAB_LDFLAGS =          -L/Users/ihabia/src2/hdf5-1.8.16/hdf5//lib  -stdlib=libstdc++


MOAB_LIBS_LINK = ${MOAB_LDFLAGS} -L${MOAB_LIBDIR} -lMOAB    -lhdf5    -lc++ -lz -ldl -lm       -lc++ -lz -ldl -lm
DAGMC_LIBS_LINK = ${MOAB_LDFLAGS} -L${MOAB_LIBDIR}  -lMOAB    -lhdf5    -lc++ -lz -ldl -lm       -lc++ -lz -ldl -lm

MOAB_CXX = /Users/ihabia/src2/mpich-3.2/mpich3//bin/mpicxx
MOAB_CC  = /Users/ihabia/src2/mpich-3.2/mpich3//bin/mpicc
MOAB_FC  =
MOAB_F77  =

# Override MOAB_LIBDIR and MOAB_INCLUDES from above with the correct
# values for the installed MOAB.

MOAB_LIBDIR=/Users/ihabia/src2/moab-4.8.2/moab/lib
MOAB_INCLUDES=-I/Users/ihabia/src2/moab-4.8.2/moab/include




> On 02 Dec 2015, at 16:17, Grindeanu, Iulian R. <iulian at mcs.anl.gov> wrote:
> 
> Hi Lorenzo,
> 
> Do you initialize MPI before using moab? 
> 
> 
> Iulian
> 
> ________________________________________
> From: moab-dev-bounces at mcs.anl.gov [moab-dev-bounces at mcs.anl.gov] on behalf of Vijay S. Mahadevan [vijay.m at gmail.com]
> Sent: Wednesday, December 02, 2015 9:08 AM
> To: Lorenzo Alessio Botti
> Cc: MOAB dev
> Subject: Re: [MOAB-dev] problem with pcomm
> 
> Lorenzo, we test your configuration very regularly (on buildbot and on
> linux machines) and I haven't seen any issues with ParallelComm. Does
> "make check" pass cleanly ?
> 
> I'll see if I can replicate this on my Mac.
> 
> Vijay
> 
> On Wed, Dec 2, 2015 at 8:49 AM, Lorenzo Alessio Botti
> <lorenzoalessiobotti at gmail.com> wrote:
>> Dear All,
>> I have a problem with the latest moab builds (both 4.8.2 and 4.9)…
>> I cannot run the following code in an application linked to moab
>> 
>>  Core moab;
>> 
>>  Interface& imoab = moab;
>> 
>> 
>>  ParallelComm* pcomm = ParallelComm::get_pcomm(&moab, 0);
>> 
>>  if (0 == pcomm)
>> 
>>  {
>> 
>>    pcomm = new ParallelComm(&imoab, MPI_COMM_WORLD);
>> 
>>  }
>> 
>>  delete pcomm;
>> 
>> 
>> It seems that a segmentation fault is triggered during the initialization of
>> the pcomm in particular in this function
>> 
>>  Tag ParallelComm::pcomm_tag(Interface *impl,
>> 
>>                              bool create_if_missing)
>> 
>> 
>> with create_if_missing = true.
>> 
>> I’m building on OS X.
>> Have you ever experienced this issue? What can I do?
>> 
>> I attach the config.log below
>> 
>> 
>> 
>> Bests
>> Lorenzo
>> 
>> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/moab-dev/attachments/20151202/10b17c40/attachment-0001.html>


More information about the moab-dev mailing list