Anders Logg wrote: >>>>> Where do we start? >>>>> >>>>> I guess one good place to start would be to get input/partitioning >>>>> working and you seem to have that working already. We should be able >>>>> to read in a mesh, partition it (with ParMetis for now) and construct >>>>> the MeshFunctions S_i and F_i. >>>>> >>>>> Once that is in place, we can start hacking on DofMapBuilder::build(). >>>>> >>>>> Could you outline what you have in terms of input/partitioning and >>>>> then we can start applying those patches. >>>>> >>>> Parallel mesh parsing, the entire mesh is never represented on a single >>>> processor. It's a two stage process, first the coordinates are loaded >>>> and partitioned with a geometric partitioner. In the second stage each >>>> processor loads the cells corresponding to the assigned coordinates, and >>>> finally the mesh is partitioned with a graph partitioner. >>>> >>>> Partitioning is done with the distributed geometric and mesh-to-dual >>>> graph partitioner in parmetis. >>> How does this work? It seems as if you have already partitioned the >>> domain geometrically, then there's no need to make a partition based on >>> topology. Or is the geometric partitioning only a first approximation >>> and then vertices are exchanged between processors? >>> >> >> The coordinates in the XML-file are initially distributed across the >> processors with a simple linear distribution, just to get it of the hard >> drive. >> >> The geometric partitioner is used to make sure that all coordinates on a >> processor lies close to each other. This simplifies and minimize >> communication when parsing cell data. >> >> Since the geometric partitioner creates rather bad partitions (with >> respected to edge-cut), the graph partitioner is used to create a good >> partitioning, with low edge-cut, thus minimizing >> data-dependencies/communication. > > Sounds good. Can you submit this in one or more patches, starting with > the parallel XML parser? > > -- > Anders >
Yes, I could at least split it into two or three patches. Niclas _______________________________________________ DOLFIN-dev mailing list [email protected] http://www.fenics.org/mailman/listinfo/dolfin-dev
