Ceci est une ancienne révision du document !
UMFPACK
Installation
nemo | 4.4 | /usr/local/UMFPACKv4.4 | compilé avec sunperflib |
shrek | /usr/local/UMFPACKv4.4 | compilé avec K. Goto's BLAS |
Utilisation
- /usr/local/UMFPACKv4.4/UMFPACK/Lib/libumfpack.a
- /usr/local/UMFPACKv4.4/AMD/Lib/libamd.a
- /usr/local/UMFPACKv4.4/UMFPACK/Include
- /usr/local/UMFPACKv4.4/AMD/Include
Utilisation de umfpack dans un code fortran:
- umfpack est écrit en C
- il existe une interface fortran 77, utilisable en fortran 90
- prendre pour exemple le fichier Demo/umf4hb64.f dans /local/apps/src/UMFPACKv4.4/UMFPACK/Demo/ sur nemo
- dans son fichier, ajouter les lignes suivantes:
Config
- on édite Make.include et Make.solaris (voir lien sur Make.solaris_amd64) avant de compiler
diff /local/apps/src/UMFPACKv4.4/UMFPACK/Make/Make.include-ori /local/apps/src/UMFPACKv4.4/UMFPACK/Make/Make.include 50c50 < CONFIG = -DNBLAS --- > CONFIG = 63c63 < # include ../Make/Make.solaris --- > include ../Make/Make.solaris
et
diff /local2/fboyer/UMFPACKv4.4/UMFPACK/Make/Make.solaris /local/apps/src/UMFPACKv4.4/UMFPACK/Make/Make.solaris 5a6 > 11,13c12,14 < CC = cc < CFLAGS = -Xc -xO5 -KPIC -dalign -xtarget=generic64 < F77FLAGS = -xO5 -KPIC -dalign -m64 --- > CC = cc > CFLAGS = -xO5 -xdepend -DLP64 -xprefetch=auto -xprefetch_level=3 -xipo=2 -m64 -xmodel=medium > F77FLAGS = -xO5 -xdepend -DLP64 -xprefetch=auto -xprefetch_level=3 -xipo=2 -m64 -xmodel=medium 22d22 < #LIB = -xlic_lib=sunperf -lfai -lfsu -lfui -lsunperf -lm -lsunmath 30c30 < LIB = -xlic_lib=sunperf -lfai -lfsu -lfui -lm --- > LIB = -L/opt/studio12/SUNWspro/lib/amd64 -R/opt/studio12/SUNWspro/lib/amd64 -lsunperf -lm -lpicl -lmtsk
- 64 bits uniquement
Tests
- prendre le source ici
cc -o umfpack_simple -m64 umfpack_simple.c -I/usr/local/UMFPACKv4.4/UMFPACK/Include -R/usr/local/UMFPACKv4.4/UMFPACK/Lib -L/usr/local/UMFPACKv4.4/UMFPACK/Lib -R/usr/local/UMFPACKv4.4/AMD/Lib -L/usr/local/UMFPACKv4.4/AMD/Lib -lumfpack -lamd -xlic_lib=sunperf