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