**arpack**
====== Utilisation ======
| ^ 32 bits ^ 64 bits ^
^ version série | /local/apps/lib/lib/libarpack_i86pc.a | /local/apps/lib/amd64/lib/libarpack_amd64.a |
^ version parallèle | /local/apps/lib/lib/parpack_MPI-i86pc.a | /local/apps/lib/amd64/lib/parpack_MPI-amd64.a |
===== Compilation sur nemo =====
* dans /local/apps/src/ARPACK
* ne pas oublier les patches ~/downloads/patch.tar.gz et ~/downloads/ppatch.tar.gz.
* compilé avec Sun Studio 12
* Sun MPI (HPC6)
* voir les options utilisées dans /local/apps/src/ARPACK/ARmake.inc
Exemple en 32 bits, série:
> diff ARmake.inc-ori ARMAKES/ARmake.solaris10
28c28
< home = $(HOME)/ARPACK
---
> home = $(HOME)/src/ARPACK
35c35
< PLAT = SUN4
---
> PLAT = i86pc
46c46
< DIRS = $(BLASdir) $(LAPACKdir) $(UTILdir) $(SRCdir)
---
> #DIRS = $(BLASdir) $(LAPACKdir) $(UTILdir) $(SRCdir)
54c54
< #DIRS = $(UTILdir) $(SRCdir)
---
> DIRS = $(UTILdir) $(SRCdir)
---
> DIRS = $(UTILdir) $(SRCdir)
61c61
< LAPACKLIB =
---
> LAPACKLIB = -xlic_lib=sunperf
105c105
< FFLAGS = -O -cg89
---
> FFLAGS = -dalign
107c107
< LDFLAGS =
---
> LDFLAGS = -xlic_lib=sunperf
115c115
< MAKE = /bin/make
---
> MAKE = make
pour compiler:
make lib
> file dssimp
dssimp: ELF 32-bit LSB executable 80386 Version 1 [SSE2 SSE AMD_3DNow CMOV FPU], dynamically linked, not stripped
> ./dssimp
_saupd: number of update iterations taken
-----------------------------------------
1 - 1: 8
_saupd: number of "converged" Ritz values
-----------------------------------------
1 - 1: 4
_saupd: final Ritz values
-------------------------
1 - 4: 8.912D+02 9.198D+02 9.198D+02 9.484D+02
_saupd: corresponding error bounds
----------------------------------
1 - 4: 6.399D-24 1.169D-14 7.116D-17 1.637D-35
==========================================
= Symmetric implicit Arnoldi update code =
= Version Number: 2.4 =
= Version Date: 07/31/96 =
==========================================
= Summary of timing statistics =
==========================================
Total number update iterations = 8
Total number of OP*x operations = 125
Total number of B*x operations = 0
Total number of reorthogonalization steps = 125
Total number of iterative refinement steps = 0
Total number of restart steps = 0
Total time in user OP*x operation = 0.000467
Total time in user B*x operation = 0.000000
Total time in Arnoldi update routine = 0.005470
Total time in saup2 routine = 0.004773
Total time in basic Arnoldi iteration loop = 0.001817
Total time in reorthogonalization phase = 0.000646
Total time in (re)start vector generation = 0.000054
Total time in trid eigenvalue subproblem = 0.000684
Total time in getting the shifts = 0.000054
Total time in applying the shifts = 0.002106
Total time in convergence testing = 0.000007
Ritz values and relative residuals
----------------------------------
Col 1 Col 2
Row 1: 8.91167D+02 1.78240D-15
Row 2: 9.19781D+02 1.44880D-15
Row 3: 9.19781D+02 2.07175D-15
Row 4: 9.48395D+02 2.57489D-15
_SSIMP
======
Size of the matrix is 100
The number of Ritz values requested is 4
The number of Arnoldi vectors generated (NCV) is 20
What portion of the spectrum: LM
The number of converged Ritz values is 4
The number of Implicit Arnoldi update iterations taken is 8
The number of OP*x is 125
The convergence criterion is 1.1102230246252D-16
Note: IEEE floating-point exception flags raised:
Inexact; Underflow;
See the Numerical Computation Guide, ieee_flags(3M)
===== sur slatp =====
impossible de compiler les exemples:
slatp:~/projects/tests/arpack/examples/SIMPLE> make dssimp
Making dssimp.o from dssimp.f
g77 -O2 dssimp.o /usr/lib/libarpack.a /usr/lib/liblapack.a /usr/lib/libblas.a -o dssimp
/usr/lib/libblas.a(xerbla.o): In function `xerbla_':
(.text+0xd0): multiple definition of `xerbla_'
/usr/lib/liblapack.a(xerbla.o):(.text+0x0): first defined here
/usr/bin/ld: Warning: size of symbol `xerbla_' changed from 97 in /usr/lib/liblapack.a(xerbla.o) to 57 in /usr/lib/libblas.a(xerbla.o)
collect2: ld returned 1 exit status
make: *** [dssimp] Error 1
sur slatp, on peut avoir:
atlas3-base - Automatically Tuned Linear Algebra Software,generic shared
lapack3 - library of linear algebra routines 3 - shared version
refblas3 - Basic Linear Algebra Subroutines 3, shared library
slatp:~# dpkg -S libblas
refblas3: /usr/lib/libblas.so.3
refblas3: /usr/lib/libblas.so.3.0
refblas3-dev: /usr/lib/libblas.so
refblas3-dev: /usr/lib/libblas.a
atlas3-base: /usr/lib/atlas/libblas.so.3
atlas3-base: /usr/lib/atlas/libblas.so.3.0
slatp:~# dpkg -S liblapack
lapack3-dev: /usr/lib/liblapack.a
lapack3: /usr/lib/liblapack.so.3
atlas3-base: /usr/lib/liblapack_atlas.so.3.0
lapack3-dev: /usr/lib/liblapack.so
lapack3: /usr/lib/liblapack.so.3.0
atlas3-base: /usr/lib/atlas/liblapack.so.3.0
atlas3-base: /usr/lib/liblapack_atlas.so.3
atlas3-base: /usr/lib/atlas/liblapack.so.3
et ça passe avec atlas:
slatp:~/projects/tests/arpack/examples/SIMPLE> make dssimp
g77 -O2 dssimp.o /usr/lib/libarpack.a /usr/lib/atlas/liblapack.so.3 /usr/lib/atlas/libblas.so.3 -o dssimp