Blas Libraries
Introduction
The key to speeding up and optimising a cluster often comes down to its BLAS libraries, so here is a review of what's been doen on the marvin cluster
ATLAS
yum install
This has been done on marvin and all the nodes. It is available in two varieties: normal atlas and then atlas-sse3.
hand compilation
OpenBLAS
Manual compilation is quite straightforward. Here is output for a lazy compilation where the CPU was not specified:
cblas_zhpr2 PASSED THE COMPUTATIONAL TESTS ( 577 CALLS)
END OF TESTS make[1]: Leaving directory `/shelf/scratch/ramon/swmake/OpenBLAS-0.2.19/ctest' make[1]: Entering directory `/shelf/scratch/ramon/swmake/OpenBLAS-0.2.19/exports' perl ./gensymbol linktest x86_64 _ 0 0 0 0 0 0 "" "" 1 > linktest.c gcc -O2 -DMAX_STACK_ALLOC=2048 -Wall -m64 -DF_INTERFACE_GFORT -fPIC -DSMP_SERVER -DNO_WARMUP -DMAX_CPU_NUMBER=32 -DASMNAME= -DASMFNAME=_ -DNAME=_ - DCNAME= -DCHAR_NAME=\"_\" -DCHAR_CNAME=\"\" -DNO_AFFINITY -I.. -shared -o ../libopenblas_piledriverp-r0.2.19.so \ -Wl,--whole-archive ../libopenblas_piledriverp-r0.2.19.a -Wl,--no-whole-archive \ -Wl,-soname,libopenblas.so.0 -lm -lpthread -lgfortran -lm -lpthread -lgfortran gcc -O2 -DMAX_STACK_ALLOC=2048 -Wall -m64 -DF_INTERFACE_GFORT -fPIC -DSMP_SERVER -DNO_WARMUP -DMAX_CPU_NUMBER=32 -DASMNAME= -DASMFNAME=_ -DNAME=_ - DCNAME= -DCHAR_NAME=\"_\" -DCHAR_CNAME=\"\" -DNO_AFFINITY -I.. -w -o linktest linktest.c ../libopenblas_piledriverp-r0.2.19.so - L/usr/lib/gcc/x86_64-redhat-linux/4.4.7 -L/usr/lib/gcc/x86_64-redhat-linux/4.4.7 -L/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../.. -lgfortran -lm -lgfortran -lm -lc && echo OK. OK. rm -f linktest make[1]: Leaving directory `/shelf/scratch/ramon/swmake/OpenBLAS-0.2.19/exports' OpenBLAS build complete. (BLAS CBLAS LAPACK LAPACKE) OS ... Linux Architecture ... x86_64 BINARY ... 64bit C compiler ... GCC (command line : gcc) Fortran compiler ... GFORTRAN (command line : gfortran) Library Name ... libopenblas_piledriverp-r0.2.19.a (Multi threaded; Max num-threads is 32) To install the library, you can run "make PREFIX=/path/to/your/installation install" .