2009/3/23 Kent Andre <[email protected]>: > > The code that FFC produces is about as fast as light. It has been > documented in a number of papers.
Is there any data available comparing the FFC performance to the hardware peak? > > I don't think you should try to beat FFC with generic meta-programming. > Or you could do it but, but don't have to high expectations... > > Insertion into the matrix is currently the bottleneck. But FFC does > not have anything to do with this. While FFC doesn't have anything to do with this, dolfin does. In the case of the MTL4 backend wrapper, it is implemented badly by ignoring the meta-programming potentials. For instance, sparse matrix insertion is done by forming a sparsity pattern outside of MTL4 and then assigning the pointers to MTL4 API, while loop unrolling could have been used here. -Ali > > Kent > > > On ma., 2009-03-23 at 10:11 +0000, A Navaei wrote: >> The success of MTL4 based on generic meta-programming, arises the >> question about re-visiting the efficiency of code-generation >> approaches, including FFC. Given that FEM can particularly benefit >> from major meta-programming characteristics, namely static >> polymorphism and loop unrolling, MTL4 demonstrates that the >> code-generation part can be much more efficiently replaced by inlining >> performed at compile-time. >> >> Without having a concrete meta-programming implementation, it may be >> impossible to predict how much performance one would gain compared to >> FFC. However, MTL4 has been reported to be many times faster than >> code-generation means such as ATLAS. >> >> Based on this, are there any specific benefits in FFC code-generation >> which may not be covered by meta-programming? >> >> >> -Ali >> _______________________________________________ >> DOLFIN-dev mailing list >> [email protected] >> http://www.fenics.org/mailman/listinfo/dolfin-dev > > _______________________________________________ DOLFIN-dev mailing list [email protected] http://www.fenics.org/mailman/listinfo/dolfin-dev
