Friday, November 22, 2024

HowTo: StoBe 2011 on OpenSuse 12.1

This installation uses the ATLAS libraries version 3.10.0 and Lapack version 3.4.1

Prepare Suse system

install following patterns:

  • base development
  • c/c++ development
  • linux kernel development

make sure fortran is installed (gfortran)

 

Switch off Powersaving Features of CPU

First, check in BIOS that Speedstep CPU throttling has been switched off

To get info on CPU:

sudo cat /proc/cpuinfo

lscpu

dmidecode | more

*If* Intel |Speedstep throttling must be on then try to control it with the CPUPower utilities (superseded CPUFreq package in Opensuse 12.1)

zypper install cpu*

 

Create Directories

  • /opt
  • /opt/StoBe – with a copy of the complete Source directory from StoBeExport distribution

Create standard ATLAS directory options for library locations:

  • /usr/local/atlas
  • /usr/local/atlas/include
  • /usr/local/atlas/lib

 

Create ATLAS Libraries

Follow these instructions for the installation of the  ATLAS library: http://math-atlas.sourceforge.net

Get the ATLAS distribution from

https://sourceforge.net/project/showfiles.php?group_id=23725

Put the downloaded ATLAS*.bz2 file into

/opt

then go into this directory

cd /opt

and create /opt/ATLAS3.10.0 as follows:

bunzip2 -c atlas3.10.0.tar.bz2 | tar xfm -

Keep the ATLAS directory created untouched (just in case) and work from a copy of it:

cp -r ATLAS ATLAS3.10.0

Download the lapack libraries distribution

wget http://www.netlib.org/lapack/lapack-3.4.1.tgz

Create build directory in /opt/ATLAS3.10.0

mkdir /opt/ATLAS3.10.0/build

Enter build directory

cd /opt/ATLAS3.10.0/build

Use configure command (-march=native figures out optimised gcc and gfortran compiler argument sets for any given CPU)

../configure -b 64 -C ic gcc -F ic -march=native -C if gfortran -F if -march=native –with-netlib-lapack-tarfile=/opt/lapack-3.4.1.tgz

[Note the ‘–‘ in front of ‘with-netlib-lapack=/usr/lib64/liblapack.a’ often copy-pastes as a single long hyphen or a full stop, leading to an error message!]

If configuration comletes successfully then go through the make process:

make build                                    # tune & build lib
make check                                    # sanity check correct answer
make time                                     # check if lib is fast
make install                                  # copy libs to install dir

 

Compile StoBe

Go to the StoBe source directory /opt/StoBe

Edit the Makefile; comment out all the example configurations and include the following:

FTNL = gfortran  -march=native  -c -x f77-cpp-input
FTPP = gfortran  -march=native  -c -x f77-cpp-input
FORT = gfortran  -march=native  -c -x f77-cpp-input
LOAD = gfortran  -march=native  -o
LIBS = -L/usr/local/atlas/lib -lf77blas -latlas

Make sure that demonblas.f is not commented out.

<make> should then result in a completing StoBe compilation.

Sven L. M. Schroeder, August 2012