← Back to team overview

dolfin team mailing list archive

Re: Parallel assembly

 

On Mon, Dec 03, 2007 at 09:53:23AM +0100, Johan Hoffman wrote:
> > On Sun, Dec 02, 2007 at 06:17:35PM +0100, Johan Hoffman wrote:
> >> >
> >> >
> >> > Johan Hoffman wrote:
> >> >>> Johan Hoffman wrote:
> >> >>>> Hi all,
> >> >>>>
> >> >>>> Connected to this discussion is also the msc thesis work on dolfin
> >> >>>> parallization of Nicklas Jansson at KTH. He has now started working
> >> on
> >> >>>> this based on the updated TODO list of dolfin. He has tried to send
> >> an
> >> >>>> email to this list (dolfin-dev@xxxxxxxxxx) but it appears that it
> >> is
> >> >>>> stuck
> >> >>>> in a filter awaiting moderator approval.
> >> >>> If he joins the list, he'll be able to make posts.
> >> >>
> >> >> Ok.
> >> >>
> >> >>> Maybe someone (a moderator) could
> >> >>>> help out so that we can get past this, to better coordinate
> >> >>>> parallelization efforts?
> >> >>>>
> >> >>> One point on the TODO list: we discussed some time ago the mesh
> >> >>> partitioning, and decided against ParMETIS or METIS because they do
> >> not
> >> >>> use a GPL (compatible) license. Magnus has implemented a nice
> >> >>> partitioning interface which uses SOCTCH which does have a GPL
> >> >>> compatible license.
> >> >>
> >> >> Ok. Does the switch to LGPL licence for dolfin make any difference?
> >> Or
> >> >> is
> >> >> it still a conflict?
> >> >>
> >> >
> >> > There is still a conflict. The METIS license basically says that it
> >> can
> >> > be used for non-profit purposes only, and permission is required to
> >> > re-distribute it.
> >>
> >> Ok, then there is a problem.
> >>
> >> >> About Scotch; the argument was that it lacked parallel partitioning,
> >> and
> >> >> a
> >> >> few other nice features of parMetis. But it seems that Scotch v5.0 is
> >> >> moving towards a parallel implementation as well?
> >> >>
> >> >
> >> > It does have it now. That said, I can't see us using or needing
> >> parallel
> >> > partitioning in the short- to medium-term future.
> >>
> >> Ok. Maybe we'll manage with Scotch for now then.
> >>
> >> As for parallel assembly, we will need this in the coming months, so we
> >> will push the fully parallel approach within Nicklas' msc project,
> >> including parallel redistribution for adaptively refined meshes (which
> >> parMetis seems to support nicely).
> >>
> >> /Johan
> >
> > Sounds very good, but if major changes to the Mesh classes are
> > necessary (which seems likely), I suspect I will be somewhat sensitive
> > to having all those changes pushed at once. So it would be good to
> > discuss plans for the design as early as possible so we can all feel
> > comfortable with the changes.
> >
> 
> I agree. That's why the TODO list was added in the dolfin rep, and an
> accompanying dolfin-dev post was sent (...which got stuck in the filter).
> With a fresh dolfin-dev membership, Nicklas can resend his post where the
> strategy is presented in more detail, which then anyone can comment on.
> 
> I would expect the plan to be rather uncontroversial, and it will fit
> nicely with the work of Magnus.
> 
> /Johan

ok, sounds good.

Magnus is finishing his thesis at the end of January and before then
we'd like to have partitioning, communication and parallel assembly in
place. We are not planning to distribute the mesh, only to broadcast
it from one processor to all others and then the assembler skips those
cells which are not on the current processor.

Then Nicklas can expand it to distributed meshes. (And of course the
work on the two approaches can happen in parallel.)

-- 
Anders


Follow ups

References