← Back to team overview

dolfin team mailing list archive

Re: Assembly timings

 

On Mon, Sep 26, 2005 at 09:47:05PM -0500, Robert C.Kirby wrote:
> Great, in particular, it will be useful to know, say for Poisson and 
> Taylor-Hood elements in Stokes, at what polynomial degree the binary 
> search tree starts to beat PETSc?  It should be easy to just run from 
> k=1..5 and see what happens.  Probably doing this test on the same 128 
> x 128 mesh is fine.
> 
> If we can get the breaking point at k=2 or 3, then it might make sense 
> to try optimizing the binary search tree code.  We will have to fight 
> the battle that "assembly time doesn't matter, it's solve time that 
> counts".  If we're only getting 10-15% speedup on assembly time and 
> assembly time is 20% of solve time, this isn't really anything to brag 
> about (.1 * .2 = an overall speedup of 2%.  I wouldn't try to publish 
> that).  On the other hand, we might try to find the best solver in 
> hypre to use (Rob Falgout claims there are things that destroy his AMG 
> for Poisson).
> 
> On the other hand, maybe we should think big.  The asymptotics favor 
> binary trees as the number of nonzeros increase per row.  One could ask 
> if we formed the Jacobian for MHD using primitive variables with 
> Taylor-Hood for fluid and piecewise linear Lagrange for 
> electromagnetics whether that gives us enough dof per row without going 
> to high polynomial degree.
> 
> Finally, we must prioritize -- I think that getting some results for 
> various formulations of Stokes measuring error in pressure & velocity 
> versus dof and nonzeros in the matrix is a more interesting result and 
> hence valuable use of time.
> 
> Any thoughts?
> 
> Rob

Improving the assembly is interesting, but it would probably be more
worthwile to get the results for Stokes. (It would also put FFC and
DOLFIN to the test and perhaps we can nail down some bugs in the
process.)

Another point is that to improve the speed of the assembly (which I
think is already pretty good), it would be easier to improve on the
interaction with the mesh (which we need to redo with Sieve anyway).

/Anders



Follow ups

References