1# Author: Alfio Lazzaro, alazzaro@cray.com (2013) 2 3# 4# target compiler... these are the options used for building the library. 5# They should be aggessive enough to e.g. perform vectorization for the specific CPU (e.g. -ftree-vectorize -march=native), 6# and allow some flexibility in reordering floating point expressions (-ffast-math). 7# Higher level optimisation (in particular loop nest optimization) should not be used. 8# 9target_compile="gfortran -O2 -funroll-loops -ffast-math -ftree-vectorize -march=native -cpp -finline-functions -fopenmp" 10 11# 12# target dgemm link options... these are the options needed to link blas (e.g. -lblas) 13# blas is used as a fall back option for sizes not included in the library or in those cases where it is faster 14# the same blas library should thus also be used when libsmm is linked. 15# 16blas_linking="-L${INTEL_PATH}/mkl/lib/intel64 -Wl,--start-group -lmkl_gf_lp64 -lmkl_sequential -lmkl_core -Wl,--end-group" 17 18# 19# host compiler... this is used only to compile a few tools needed to build 20# the library. The library itself is not compiled this way. 21# This compiler needs to be able to deal with some Fortran2003 constructs. 22# 23host_compile="gfortran -O2" 24