Armadillo is C++ linear algebra library that is needed to support some other software stacks. To get best performance using MKL as backend is adviced.

The challenge is that default installer does not find MKL from non-standard location.

  1. module load mkl

  2. Edit “./build_aux/cmake/Modules/ARMA_FindMKL.cmake” and add MKL path to “PATHS”

  3. Edit “./build_aux/cmake/Modules/ARMA_FindMKL.cmake” and replace mkl_intel_thread with mkl_sequential (we do not want threaded libs on the cluster)

  4. Edit “include/armadillo_bits/config.hpp” and enable ARMA_64BIT_WORD

  5. cmake . && make

  6. make install DESTDIR=/share/apps/armadillo/<version>