Frealix: installation

Installing pre-compiled binaries

Just unpack the distributed archive into the appropriate destination directory:

tar -xvzf frealix-1.0.0-linux64.tar.gz -C /path/for/installation/

Compiling & installing from source

Frealix uses the GNU build system, so you should be able to download and install it in a few steps.
For example:

tar -xvzf frealix-1.0.0.tar.gz
cd frealix
mkdir build
cd build
../configure F77=nagfor FC=nagfor
make 
make install

The configure script has a number of useful options to change, for example, the destination directory for the installation, whether to build static or dynamic executables etc. To get a list of options, do:

../configure --help

For best performance, the following options may help (some of them are already activated by default):

../configure --enable-static --disable-runtime-checks --disable-debug --enable-optimisations --enable-openmp

Also for best performance, if you have the Intel Math Kernel Library available, you should check the output of the configure script to see that it found MKL and is building against it. In our hands, this can provide FFT speedups of 2x or more relative to FFTW on Xeon cores.

Dependencies

Fortran compilers

Unfortunately, Frealix can only be compiled using the Intel or NAG Fortran compiler for now.
Here the status for other compilers:

  • gfortran (GNU): last I looked, some features of the F2003 standard used in Frealix were not supported. The main one used in Frealix is finalizers (which are like C++ destructors). Gfortran has an open bug tracking this.
  • pgfortran (Portland): at last attempt (14.03), the compiler choked on Frealix.
  • other compilers: not tested

Automatic tests

If you'd like to check whether your build of Frealix is "behaving" as expected, you can run a series of tests on it (in total, this should take 1 to 2 hours):

cd test_suite
./run_tests.sh /path/to/frealix