[MOAB-dev] Fwd: exchanging sets of entities between processors in parallel

Tim Tautges tautges at mcs.anl.gov
Wed Apr 18 10:56:20 CDT 2012


Iulian,
   Please enter the bugs into the bug system, with attachments, I'll take a look after this milestone is done.  Thanks.

- tim

On 04/18/2012 08:38 AM, Iulian Grindeanu wrote:
> Thank you,
> I am forwarding the message to the group
>
> ------------------------------------------------------------------------------------------------------------------------
> *From: *"Kirill Terehov" <kirill.terehov at gmail.com>
> *To: *"Iulian Grindeanu" <iulian at mcs.anl.gov>
> *Sent: *Wednesday, April 18, 2012 6:29:24 AM
> *Subject: *Re: [MOAB-dev] exchanging sets of entities between processors in parallel
>
>
> On Apr 17, 2012, at 7:35 PM, Iulian Grindeanu wrote:
>
>
>
>     ------------------------------------------------------------------------------------------------------------------------
>
>         Yes, I've made it public
>
>         One of the goals is to make adaptively refined mesh based on octree with repartitioning
>         The code I've sent to you can do initial partitioning on the same run, but can't do repartitioning
>
>
>
>     OK, I see.
>     This is a nice problem, but I am not sure anybody did it yet using MOAB. I think we would be happy if you want to
>     contribute your ideas. Most of the parallel communication is done in the ParallelComm class.
>
>     mesh refinement/coarsening in parallel is a difficult problem; do you rebalance or you start with a new
>     partitioning? I don't even know if you can rebalance in parmetis. (I mean, can you start from an existing graph,
>     modify it, and partition again, with minimal "changes"?)
>
>
>
> Parmetis can do what you say, there is a function for that (ParMETIS_V3_AdaptiveRepart)
> But when I try to do that with moab, something goes wrong
>
>
> I have also faced several issues and want to share it with you
>
> 1) While installing moab on SUSE Linux Enterprise Server 10 I've got following error:
>
> SparseTag.cpp(377): error: no default constructor exists for class "Internal::hashtable_const_iterator<std::pair<const
> moab::EntityHandle={size_t={unsigned long}}, void *>, false, false>"
> SparseTag::MapType::const_iterator iter;
> ^
> detected during instantiation of "void moab::get_tagged(const moab::SparseTag::MapType &, Container &, moab::EntityType,
> const moab::Range *) [with Container=moab::Range]" at line 433
>
> it was intel compiler 11.1 20101201, i've got same error with g++ 4.1.0
> the problem seems to come from unordered_map class on this platform
> i've successfully installed moab by removing check for this class inside configure script
> probably there should be an option to omit this check or more tests for usability of this class inside configure
>
> 2) I attach a simple example when moab hangs inside exchange_ghost_cells
> attachments are:
> a. an initial mesh nmesh-0.vtk
> b. mesh out.mhdf prepared by mbpart with command ./mbpart -p partgeomkway 6 nmesh-0.vtk out.mhdf
> c. simple code bug.cpp that can be compiled by
> mpicxx bug.cpp -lMOAB -lnetcdf
> and run by
> mpiexec -np 6 ./a.out out.mhdf
>
> it fails to pass exchange_ghost_cells
>
> I'll try to replace code for message passing inside this function
> If I'll have a success I'll share it with you
>
>
>
>     I will look at your code more, but I don't think I can be of much help, sorry about that.
>
>     Iulian
>
>
>
>

-- 
================================================================
"You will keep in perfect peace him whose mind is
   steadfast, because he trusts in you."               Isaiah 26:3

              Tim Tautges            Argonne National Laboratory
          (tautges at mcs.anl.gov)      (telecommuting from UW-Madison)
  phone (gvoice): (608) 354-1459      1500 Engineering Dr.
             fax: (608) 263-4499      Madison, WI 53706



More information about the moab-dev mailing list