arpack

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
arpack [2008/12/30 12:00] – créée gerardarpack [2017/08/25 09:56] (Version actuelle) – modification externe 127.0.0.1
Ligne 1: Ligne 1:
 **arpack** **arpack**
 +
  
 ====== Utilisation ====== ====== Utilisation ======
  
-^ version série | /local/apps/lib/amd64/lib/libarpack_amd64.a | 
-^ version parallèle | /local/apps/lib/amd64/lib/parpack_MPI-amd64.a | 
  
 +| ^ 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 ===== 
  
  
-  * installé sur nemodans /local/apps/src/ARPACK + 
-  * compilé avec Sun Studio 12, en 64 bits+ 
 + 
 +===== 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)   * Sun MPI (HPC6)
-  * voir les options utilisées dans /local/apps/src/ARPACK/ARmake.inc:+  * voir les options utilisées dans /local/apps/src/ARPACK/ARmake.inc 
 + 
 +Exemple en 32 bits, série:
 <code> <code>
-> diff ARmake.inc-ori ARmake.inc-serial +> diff ARmake.inc-ori  ARMAKES/ARmake.solaris10 
 28c28 28c28
 < home = $(HOME)/ARPACK < home = $(HOME)/ARPACK
Ligne 32: Ligne 42:
 --- ---
 > DIRS         = $(UTILdir) $(SRCdir) > DIRS         = $(UTILdir) $(SRCdir)
 +---
 +> DIRS         = $(UTILdir) $(SRCdir)
 +61c61
 +< LAPACKLIB =
 +---
 +> LAPACKLIB = -xlic_lib=sunperf
 105c105 105c105
 < FFLAGS        = -O -cg89 < FFLAGS        = -O -cg89
 --- ---
-> FFLAGS        = -fast+> FFLAGS        = -dalign
 107c107 107c107
 < LDFLAGS =  < LDFLAGS = 
Ligne 47: Ligne 63:
 </code> </code>
  
 +pour compiler:
 +<code>
 +make lib
 +</code>
  
 +
 +<code>
 +> 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         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)
 +
 +
 +</code>
 +
 +===== sur slatp =====
 +impossible de compiler les exemples:
 +<code>
 +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
 +</code>
 +sur slatp, on peut avoir:
 +<code>
 +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
 +</code>
 +et ça passe avec atlas:
 +<code>
 +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
 +</code>
  
  • arpack.1230634845.txt.gz
  • Dernière modification : 2017/08/25 09:55
  • (modification externe)