Notes on specific research software¶
SCIATRAN¶
We recommend to compile SCIATRAN with the Intel compiler on Aether. In order to
make use of the MKL libraries and create a dynamically linked executable, the
following patch needs to be applied to the SCIATRAN Makefile
:
diff --git a/Makefile b/Makefile
index 3f6679c..ddf4120 100644
--- a/Makefile
+++ b/Makefile
@@ -29,8 +29,7 @@
#######################################################################
# Set defaults
-lapack_blas_names = auto
-#lapack_blas_names = standard
+lapack_blas_names = standard
# If you have GALAHAD Quadratic Programming Library installed on your
# computer select "yes" below.
@@ -83,6 +82,8 @@ endif
objdir = OBJ_$(ht)_$(fc_lbl)
objdir_GALAHAD = OBJ_$(ht)_$(fc)
EXECUTABLE = SCIA_$(ht)_$(fc_lbl)
GALAHAD_DIR := $(GALAHAD_ROOT)/$(objdir_GALAHAD)
ifeq ($(debug),true)
objdir := $(objdir)_DBG
@@ -103,7 +104,7 @@ MAKE = make
# Intel ifort compiler
# --------------------
ifeq ($(fc_lbl),ifort)
- FFLAGS := -static -u -module $(OBJDIR) -qopenmp -warn all -warn notruncated_source -warn nounused -warn nointerfaces -check noarg_temp_created -WB
+ FFLAGS := -u -module $(OBJDIR) -qopenmp -warn all -warn notruncated_source -warn nounused -warn nointerfaces -check noarg_temp_created -WB -I${MKLROOT}/include
ifeq ($(debug),true)
# FFLAGS := $(FFLAGS) -g -C -warn truncated_source -warn nogeneral -warn unused -Wcheck
FFLAGS := $(FFLAGS) -g -C -check all
@@ -111,8 +112,7 @@ else
FFLAGS := $(FFLAGS) -O3
endif
FFLAGS_77 := $(FFLAGS)
- LNFLAGS = $(FFLAGS) -llapack$(lib_add) -lblas$(lib_add) -static
-# LNFLAGS = $(FFLAGS) -llapack -lblas -static
+ LNFLAGS = $(FFLAGS) -L${MKLROOT}/lib/intel64 -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread -lm -ldl
endif
# Intel ifort compiler with MPI support