[MOAB-dev] r5182 - in MOAB/trunk/src/parallel: . moab

Hong-Jun Kim hongjun at mcs.anl.gov
Mon Oct 3 17:57:48 CDT 2011


Can you increase debug level to 5 to get more information about message communication? (i.e. DEBUG_IO=5)

Hong-Jun

----- Original Message -----
> From: "Rajeev Jain" <jain at mcs.anl.gov>
> To: "Hong-Jun Kim" <hongjun at mcs.anl.gov>
> Cc: moab-dev at mcs.anl.gov
> Sent: Monday, October 3, 2011 5:35:01 PM
> Subject: Re: [MOAB-dev] r5182 - in MOAB/trunk/src/parallel: . moab
> You are right, this commit didn't break anything.
> I didn't test this code before, my guess is some similar fix is need
> for resolving shared sets.
> 
> Rajeev
> 
> 
> 
> 
> 
> 
> From: Hong-Jun Kim <hongjun at mcs.anl.gov>
> To: Rajeev Jain <jain at mcs.anl.gov>
> Cc: moab-dev at mcs.anl.gov
> Sent: Monday, October 3, 2011 5:28 PM
> Subject: Re: [MOAB-dev] r5182 - in MOAB/trunk/src/parallel: . moab
> 
> Actually, this commit seems not to do anything related to resolving
> shared sets.
> Was your code working with the previous version of MOAB?
> 
> Hong-Jun
> 
> ----- Original Message -----
> > From: "Rajeev Jain" < jain at mcs.anl.gov >
> > To: moab-dev at mcs.anl.gov
> > Sent: Monday, October 3, 2011 5:11:25 PM
> > Subject: Re: [MOAB-dev] r5182 - in MOAB/trunk/src/parallel: . moab
> > Hi Hong-Jun,
> > Is there some change needed for "unpack_set" function (below)?
> >
> >
> > ErrorCode WriteHDF5Parallel::unpack_set( EntityHandle set,
> > const unsigned long* buffer,
> > size_t buffer_size )
> > {
> > // use local variables for readability
> > assert(buffer_size >= 4);
> > assert(buffer[1]+buffer[2]+buffer[3] <= buffer_size);
> > ....
> >
> >
> >
> >
> > CoreGen resolves MATERIAL_SET's using the "resolve_shared_sets"
> > function before calling parallel save, the following error occurs
> > and
> > the process is terminated:
> >
> > "
> > 3 H5M *********** Debug Barrier 7 (@412)***********
> > 0 H5M (1.60 s) creating meshset table
> > ...
> > ...
> > 0 H5M (1.61 s) COMMUNICATING SHARED SET DATA (0 owned & 0 remote)
> > 0 H5M Using buffer size of 128 for an expected message count of 0
> > [2] Assert(buffer[1]+buffer[2]+buffer[3] <= buffer_size) failed at
> > WriteHDF5Parallel.cpp:1727
> > Terminated (signal 15)
> > "
> >
> > Rajeev
> >
> >
> >
> >
> >
> >
> > From: " hongjun at mcs.anl.gov " < hongjun at mcs.anl.gov >
> > To: moab-dev at mcs.anl.gov
> > Sent: Friday, September 30, 2011 6:26 PM
> > Subject: [MOAB-dev] r5182 - in MOAB/trunk/src/parallel: . moab
> >
> > Author: hongjun
> > Date: 2011-09-30 18:26:09 -0500 (Fri, 30 Sep 2011)
> > New Revision: 5182
> >
> > Modified:
> > MOAB/trunk/src/parallel/ParallelComm.cpp
> > MOAB/trunk/src/parallel/moab/ParallelComm.hpp
> > Log:
> > o "created_iface" flag is added in "unpack_entities" function
> > o it is used in "exchange_owned_mesh" and it is for recognizing with
> > ghost mesh element and non-ghost newly created mesh element
> > o it prevents to assign "PSTATUS_NOT_OWNED" and "PSTATUS_GHOST" for
> > non-ghost newly created mesh elements
> > o passes make check
> >
> >
> > Modified: MOAB/trunk/src/parallel/ParallelComm.cpp
> > ===================================================================
> > --- MOAB/trunk/src/parallel/ParallelComm.cpp 2011-09-29 21:08:52 UTC
> > (rev 5181)
> > +++ MOAB/trunk/src/parallel/ParallelComm.cpp 2011-09-30 23:26:09 UTC
> > (rev 5182)
> > @@ -960,12 +960,13 @@
> > std::vector<EntityHandle> &L2hloc,
> > std::vector<EntityHandle> &L2hrem,
> > std::vector<unsigned int> &L2p,
> > - std::vector<EntityHandle> &new_ents)
> > + std::vector<EntityHandle> &new_ents,
> > + const bool created_iface)
> > {
> > unsigned char *tmp_buff = buff_ptr;
> > ErrorCode result;
> > result = unpack_entities(buff_ptr, store_remote_handles,
> > - ind, false, L1hloc, L1hrem, L1p, L2hloc, L2hrem, L2p, new_ents);
> > + ind, false, L1hloc, L1hrem, L1p, L2hloc, L2hrem, L2p, new_ents,
> > created_iface);
> > RRA("Unpacking entities failed.");
> > if (myDebug->get_verbosity() == 3) {
> > myDebug->tprintf(4, "unpack_entities buffer space: %ld bytes.\n",
> > (long int)(buff_ptr-tmp_buff));
> > @@ -1585,7 +1586,8 @@
> > std::vector<EntityHandle> &L2hloc,
> > std::vector<EntityHandle> &L2hrem,
> > std::vector<unsigned int> &L2p,
> > - std::vector<EntityHandle> &new_ents)
> > + std::vector<EntityHandle> &new_ents,
> > + const bool created_iface)
> > {
> > // general algorithm:
> > // - unpack # entities
> > @@ -1769,7 +1771,8 @@
> > // update sharing data and pstatus, adjusting order if iface
> > result = update_remote_data(new_h, &ps[0], &hs[0], num_ps,
> > (is_iface ? PSTATUS_INTERFACE :
> > - (created_here ? (PSTATUS_GHOST | PSTATUS_NOT_OWNED) : 0)));
> > + (created_here ? (created_iface ? 0 : PSTATUS_GHOST
> > + | PSTATUS_NOT_OWNED) : 0)));
> > RRA("");
> >
> > // need to send this new handle to all sharing procs
> > @@ -5918,7 +5921,8 @@
> > remoteOwnedBuffs[ind/2]->reset_ptr(sizeof(int));
> > result = unpack_buffer(remoteOwnedBuffs[ind/2]->buff_ptr,
> > store_remote_handles, buffProcs[ind/2], ind/2,
> > - L1hloc, L1hrem, L1p, L2hloc, L2hrem, L2p, new_ents);
> > + L1hloc, L1hrem, L1p, L2hloc, L2hrem, L2p,
> > + new_ents, true);
> > if (MB_SUCCESS != result) {
> > std::cout << "Failed to unpack entities. Buffer contents:" <<
> > std::endl;
> > print_buffer(remoteOwnedBuffs[ind/2]->mem_ptr, MB_MESG_ENTS_SIZE,
> > buffProcs[ind/2], false);


More information about the moab-dev mailing list