← Back to team overview

dolfin team mailing list archive

Re: mtl4 sandbox

 

On Thu, Jul 17, 2008 at 11:19:09PM +0100, Garth N. Wells wrote:
> It's now easy to play with the sandbox programs in
> 
>    sandbox/mtl4/poisson_bench
>    sandbox/mtl4/nse_bench
> 
> All you need to do is set the environment variable MTL4_DIR to point to 
> the MTL4 source, and then run scons in the relevant directory.

Works fine here.

> What's clear is that we should take a look at the efficiency of the 
> sparsity computation. In particular, there are some virtual functions 
> calls which can possibly be avoided, or at least minimised. Even when 
> using MTL4 for general problems it will be necessary to compute some 
> form of a sparsity pattern to estimate the number of nonzeros per row.
> 
> It would be useful to use the same assembler for MTL4 as is used for 
> other linear algebra backends to see what influence that has.

I think it would be good to move the MTL4 interface into dolfin/la as
soon as possible. The missing functions can return an error until they
have been fixed.

Then we should include MTL4 in the main assembly benchmark which is

    bench/fem/assembly/

If possible, we should figure out a way to run this benchmark
regularly (like we do with the buildbot) so we can check for
regressions.

> The results for uninitialised MTL4 matrices are indeed impressive, as is 
> the re-assembly time for Navier-Stokes.
> 
> uBLAS and PETSc deliver almost identical performance for all tests.

Here's what I get on my laptop (for n = 32). Do you get similar
results?

  Summary:                MTL4  uBLAS
  First matrix assembly   2.95  7.99
  Matrix re-assembly      2.51  3.58
  Vector    assembly      2.38  2.49

-- 
Anders

Attachment: signature.asc
Description: Digital signature


Follow ups

References