From: Jed Brown <jed@59...>  20090120 17:17:30

On Tue, Jan 20, 2009 at 06:13, John Peterson <jwpeterson@...> wrote: > On Tue, Jan 20, 2009 at 7:58 AM, Roy Stogner <roystgnr@...> wrote: >> >> On Tue, 20 Jan 2009, Petry Stefan wrote: >> >>> is der anybody who has used the Intel Math Kernel Library for >>> solving equationsystem? If yes, can anybody tell me how I can use >>> this with libMesh  systemmatrix? >> >> You can't use it directly, but the linear algebra packages libMesh >> links to can use it. Compile PETSc with the Intel MKL, then compile >> libMesh with your PETSC_DIR/PETSC_ARCH pointing to that PETSc build. Unfortunately, having a fast BLAS doesn't make as much difference as you might hope for sparse linear algebra due to memory bandwidth limitations when the working set doesn't fit in L1. It's still worth telling PETSc to use the BLAS, Lapack, and ScaLapack from MKL, but it's not likely to make a big difference. The most useful part of MKL for us is probably the sparse direct solver called PARDISO. (The iterative stuff in MKL is pretty weak compared to PETSc.) PARDISO uses a shared memory model which I guess is the reason it's not an option in PETSc. As an alternative, I would suggest trying MUMPS and UMFPACK which you can get with download{blacs,scalapack,mumps,umfpack}. > It might be kind of a fun project to reimplement some of the > DenseMatrix member functions to use Lapack/BLAS routines. Keep in mind that it's pretty common for these matrices to be so small that BLAS will be slower. Jed 