I have made some changes to allow a backend to notify that it does not
need to be initialized by a sparsity pattern. If the factory function
createSparsityPattern() returns 0, then the assembler will not build
the sparsity pattern.
I have tried this for the STL backend (earlier called AssemblyMatrix).
No sparsity pattern is computed and no preallocation is made, just
inserting directly into the vector of vectors using a linear search
and this gives very good speedups, see here:
http://www.fenics.org/wiki/Benchmark
STL is 36% faster than all other backends for the NS testcase.
It is also about just as fast as the other backends for the assembly
step ("Assemble cells") even if no preallocation is made.
------------------------------------------------------------------------
_______________________________________________
DOLFIN-dev mailing list
DOLFIN-dev@xxxxxxxxxx
http://www.fenics.org/mailman/listinfo/dolfin-dev