← Back to team overview

dolfin team mailing list archive

Re: [HG dolfin] Use DofMap in FEM to get dof mapping and to compute number of nonzeroes per matrix row. This gives big memory savings for some problems. For /src/demo/pde/elasticity memory use was approx. 600mb, now 200mb.

 

Do you mean "DofMap associated with mesh and finite element"?

I'm ok with that. We could have a DiscreteFunction with two members:

    Vector
    DofMap

I haven't looked closely on the DofMap yet, but does it allow working
only through the on-the-fly computed dofmap of the FFC generated code?

Or is it necessary to compute all the data?

I'd like something where one can decide whether to actually build all
the data or just use what FFC generates (to save memory in storing the
function).

By the way: impressive subject of this post. :-)

/Anders


On Wed, Dec 06, 2006 at 04:19:33PM +0100, Garth N. Wells wrote:
> We need to think a bit about how a discrete Function is represented. At 
> the moment a Function is defined by a mesh, a finite element and a 
> vector, and the finite element provides a simple dof mapping. What we 
> need is that a Function is defined by a DofMap and a vector, where the 
> DofMap is associated with a vector and a finite element.
> 
> Any ideas?
> 
> Garth
> 
> 
> Anders Logg wrote:
> > Very nice!
> > 
> > /Anders
> > 
> > 
> >         On Tue, Dec 05, 2006 at 09:51:02PM +0100, DOLFIN wrote:
> >> One or more new changesets pushed to the primary DOLFIN repository.
> >> A short summary of the last three changesets is included below.
> >>
> >> changeset:   2500:81caeea1ec9f7ee49058dcacc0204bd3dfaa11d4
> >> tag:         tip
> >> user:        "Garth N. Wells <g.n.wells@xxxxxxxxxx>"
> >> date:        Tue Dec 05 21:50:43 2006 +0100
> >> files:       src/kernel/fem/FEM.cpp src/kernel/fem/dolfin/FEM.h
> >> description:
> >> Use DofMap in FEM to get dof mapping and to compute number of nonzeroes per matrix row. This gives big memory savings for some problems. For /src/demo/pde/elasticity memory use was approx. 600mb, now 200mb.
> >>
> >> The sparsity pattern could be used when intialising uBlas matrices which will give a major speed up.
> >>
> >>
> >> changeset:   2499:a9b743b159ccc730ba463751ec018a440b00480d
> >> parent:      2497:a9be37db26e6668c6c83ac27423d478ef1b79e93
> >> parent:      2498:2d0904d34b61e8a1f9132326bd74851e5b94946e
> >> user:        "Garth N. Wells <g.n.wells@xxxxxxxxxx>"
> >> date:        Tue Dec 05 21:30:50 2006 +0100
> >> files:       
> >> description:
> >> merge
> >>
> >>
> >> changeset:   2498:2d0904d34b61e8a1f9132326bd74851e5b94946e
> >> parent:      2491:5d1dc976cd3c2897f43db2b60e9ca405928c2dba
> >> user:        "Garth N. Wells <g.n.wells@xxxxxxxxxx>"
> >> date:        Tue Dec 05 21:29:35 2006 +0100
> >> files:       src/kernel/fem/DofMap.cpp src/kernel/fem/dolfin/DofMap.h
> >> description:
> >> Fix memory leak in DofMap.
> >>
> >>
> >> ----------------------------------------------------------------------
> >> For more details, visit http://www.fenics.org/hg/dolfin
> >> _______________________________________________
> >> DOLFIN-dev mailing list
> >> DOLFIN-dev@xxxxxxxxxx
> >> http://www.fenics.org/mailman/listinfo/dolfin-dev
> > _______________________________________________
> > DOLFIN-dev mailing list
> > DOLFIN-dev@xxxxxxxxxx
> > http://www.fenics.org/mailman/listinfo/dolfin-dev
> > 
> 
> 
> _______________________________________________
> DOLFIN-dev mailing list
> DOLFIN-dev@xxxxxxxxxx
> http://www.fenics.org/mailman/listinfo/dolfin-dev


Follow ups

References