← Back to team overview

dolfin team mailing list archive

Re: profiling and UMFPACK

 

Alessio Quaglino wrote:
Alessio Quaglino wrote:
Yes, I link dolfin and my code with -pg but not dolfin and UMFPACK,
hence
I guess I must use tic() and toc() in order to time the LU
factorization.

There is another problem with UMFPACK, it seems that with all the
default
values the call:

umfpack_dl_numeric( (const long int*) Rp, (const long int*) Ri, Rx,
Symbolic, &Numeric, control, info);
control[UMFPACK_PRL] = 2;
umfpack_dl_report_info(control, info);

returns, in particular, the following:

BLAS library used:  none.  UMFPACK will be slow.

This is because your UMFPACK was built without BLAS. In order to make
UMFPACK more portable this is the default, you have to edit the
UMFPACKv4.4/UMFPACK/Make/Make.<arch> and
UMFPACKv4.4/AMD/Make/Make.<arch> files to compile with a BLAS library.
Dolfin can link to UMFPACK like this just fine, it just has timing
implications.

Andy

Ok I see. The problem is that I've used the Debian repositories in order
to install UMFPACK. I've thus remove the UMFPACK package and downloaded
the code (again version 4.4 to avoid conflicts) from its website. I had to
install the UBLAS ATLAS Debian packages and then I could compile with the
options:

3: with Fortran interface to the ATLAS BLAS
CONFIG =
LIB = -lf77blas -latlas -lfrtbegin -lg2c -lm

then I configured dolfin with:

./configure --disable-pydolfin
--with-amd-lib=/home/alessio/FEniCS/UMFPACKv4.4/AMD/Lib/
--with-umfpack-lib=/home/alessio/FEniCS/UMFPACKv4.4/UMFPACK/Lib/
--with-umfpack-include=/home/alessio/FEniCS/UMFPACKv4.4/UMFPACK/Include/

I recompiled dolfin and my code, but I still obtain the message:

BLAS library used: none.  UMFPACK will be slow.

can the problem be related to the call of umfpack_dl_* functions? It seems
that UMFPACK demos use BLAS for umfpack_di_* but not fot umfpack_dl_*.

No, dl and di relate to the type of integer used. On 32 bit machines there is no difference. Either you haven't compiled UMFPACK correctly, or DOLFIN is linking to another UMFPACK library. Check that you're DOLFIN executable is linked to the correct UMFPACK library by examining the compiler linking flags and using ldd on the executable.

Garth

Thanks for the help.

Alessio


so I suspect that my UMFPACK and dolfin are not linked properly. I'm
using
UMFPACK 4.4 and uBlas. Has anyone experienced something similar?

Alessio



I don't have alot of experiance with gprof, nor am I familiar with
UMFPACK.
But code that isn't compiled AND linked with -pg are ignored by the
profiler.
Maybe the functions you mention that are ignored aren't compiled and
linked with
-pg?


I'm trying to profile my code using gprof adding -gp to the flags when
compiling. However it seems that the functions called by UMFPACK are
completely ignored. Is there a solution to include them or should I
use
another profiling tool? Thanks.

Regards,
Alessio Quaglino

_______________________________________________
DOLFIN-dev mailing list
DOLFIN-dev@xxxxxxxxxx
http://www.fenics.org/mailman/listinfo/dolfin-dev

_______________________________________________
DOLFIN-dev mailing list
DOLFIN-dev@xxxxxxxxxx
http://www.fenics.org/mailman/listinfo/dolfin-dev



_______________________________________________
DOLFIN-dev mailing list
DOLFIN-dev@xxxxxxxxxx
http://www.fenics.org/mailman/listinfo/dolfin-dev


--

====================
Andy Terrel
Computer Science Dept
University of Chicago
aterrel@xxxxxxxxxxxx
---------------------

Men are equal;
it is not birth but virtue that makes the difference.
                                            -Voltaire

_______________________________________________
DOLFIN-dev mailing list
DOLFIN-dev@xxxxxxxxxx
http://www.fenics.org/mailman/listinfo/dolfin-dev



_______________________________________________
DOLFIN-dev mailing list
DOLFIN-dev@xxxxxxxxxx
http://www.fenics.org/mailman/listinfo/dolfin-dev





Follow ups

References