Skip to content

Commit

Permalink
Merge pull request #264 from PrincetonUniversity/feature/viper
Browse files Browse the repository at this point in the history
Feature/viper
  • Loading branch information
lazersos authored Jul 17, 2024
2 parents d1345a8 + 2d286e0 commit fddfa05
Show file tree
Hide file tree
Showing 2 changed files with 175 additions and 2 deletions.
172 changes: 172 additions & 0 deletions SHARE/make_viper.inc
Original file line number Diff line number Diff line change
@@ -0,0 +1,172 @@
#######################################################################
# Define Basic Utilities
#######################################################################
SHELL = /bin/sh
PWD1 = `pwd`
MYHOME = $(HOME)/bin
PRECOMP:= fpp -C -P -DLINUX
COMPILE = ifort
COMPILE_FREE = ifort
LINK = ifort -Bstatic -o
LINK_AR = ar -ruv
LINK_C = icc -shared -Wl,-z-defs

#######################################################################
# Define Compiler Flags
#######################################################################
FLAGS_R = -I${MKLROOT}/include/intel64/lp64 -I$(MKL_HOME)/include \
-O2 -assume noold_unit_star \
-xCORE-AVX512 -qopt-zmm-usage=high -fp-model strict -ip
FLAGS_D = -I${MKLROOT}/include/intel64/lp64 -I$(MKL_HOME)/include \
-O0 -assume noold_unit_star \
-xCORE-AVX512 -qopt-zmm-usage=high -fp-model strict -ip \
-check all,noarg_temp_created -ftrapuv -g -traceback
LIBS = ${MKLROOT}/lib/intel64/libmkl_blas95_lp64.a \
${MKLROOT}/lib/intel64/libmkl_lapack95_lp64.a \
${MKLROOT}/lib/intel64/libmkl_scalapack_lp64.a \
-Wl,--start-group ${MKLROOT}/lib/intel64/libmkl_intel_lp64.a \
${MKLROOT}/lib/intel64/libmkl_sequential.a \
${MKLROOT}/lib/intel64/libmkl_core.a \
${MKLROOT}/lib/intel64/libmkl_blacs_intelmpi_lp64.a \
-Wl,--end-group -lpthread -lm -ldl
#######################################################################
# MPI Options
#######################################################################
LMPI = T
MPI_COMPILE = mpiifort
MPI_COMPILE_FREE = mpiifort
MPI_COMPILE_C = mpiifort
MPI_LINK = mpiifort
MPI_RUN = srun
MPI_RUN_OPTS = --nodes=1 --ntasks-per-node=72 --time=0:30:00 -p express
MPI_RUN_OPTS_SM = --nodes=1 --ntasks-per-node=72 --time=0:30:00 -p express
MPI_RUN_OPTS_MD = --nodes=8 --ntasks-per-node=72 --time=0:30:00 -p express
MPI_RUN_OPTS_LG = --nodes=32 --ntasks-per-node=72 --time=0:30:00 -p express

#######################################################################
# NAG Options
#######################################################################
LNAG = F
NAG_LIB = $(NAGFLIB) $(NAGMKLLIB)

#######################################################################
# NETCDF Options
#######################################################################
LNETCDF = T
NETCDF_INC = $(shell nc-config --fflags)
NETCDF_LIB = $(shell nc-config --flibs)

#######################################################################
# HDF5 Options
#######################################################################
LHDF5 = T
PRECOMP+= -DHDF5_PAR
HDF5_INC = -I$(HDF5_HOME)/include
HDF5_LIB = -Wl,-rpath,$(HDF5_HOME)/lib -L$(HDF5_HOME)/lib \
-lhdf5 -lhdf5_fortran -lhdf5_hl -lhdf5hl_fortran

#######################################################################
# FFTW3 Options
#######################################################################
LFFTW3 = T
FFTW3_INC = -I$(FFTW_HOME)/include
FFTW3_LIB = -L$(FFTW_HOME)/lib -lfftw3 -lfftw3f \
-Wl,-rpath,$(FFTW_HOME)/lib

#######################################################################
# PGPLOT Options
#######################################################################
LPGPLOT = F
PGPLOT_INC =
PGPLOT_LIB =

#######################################################################
# SILO Options
#######################################################################
LSILO = F
SILO_INC = -I$(SILO_DIR)/include
SILO_LIB = -L$(SILO_DIR)/lib -lsilo

#######################################################################
# DKES/NEO Options
#######################################################################
LDKES = T
LNEO = T

#######################################################################
# GENE Options
#######################################################################
LGENE = F
GENE_DIR = $(GENE_PATH)/bin/obj_cobra
FUTILS_DIR = $(GENE_PATH)/external/cobra/futils-gene-mod/src
LIB_GENE = libgene.a
LIB_FUTILS = libfutils.a
GENE_INC = -I$(GENE_DIR) \
-I$(FUTILS_DIR)
GENE_LIB = $(GENE_DIR)/$(LIB_GENE) \
$(FUTILS_DIR)/$(LIB_FUTILS)

#######################################################################
# COILOPT++ Options
#######################################################################
LCOILOPT = F
COILOPT_INC = -I$(COILOPT_PATH)
COILOPTPP_DIR = $(COILOPT_PATH)
LIB_COILOPTPP = libcoilopt++.a
COILOPT_LIB = $(COILOPT_PATH)/$(LIB_COILOPTPP)

#######################################################################
# TERPSICHORE Options
#######################################################################
LTERPSICHORE= F
TERPSICHORE_INC = -I$(TERPSICHORE_PATH)
TERPSICHORE_DIR = $(TERPSICHORE_PATH)
LIB_TERPSICHORE = libterpsichore.a
TERPSICHORE_LIB = $(TERPSICHORE_DIR)/$(LIB_TERPSICHORE)

#######################################################################
# TRAVIS Options
#######################################################################
LTRAVIS= F
TRAVIS_DIR = $(TRAVIS_PATH)
LIB_TRAVIS = libtravis64_sopt.a
LIB_MCONF = libmconf64.a
LIB_FADDEEVA = libfaddeeva64.a
TRAVIS_LIB = $(TRAVIS_DIR)/lib/$(LIB_TRAVIS) \
$(TRAVIS_DIR)/faddeeva_package/lib/$(LIB_FADDEEVA) \
$(TRAVIS_DIR)/magconf/lib/$(LIB_MCONF) -lstdc++

#######################################################################
# SFINCS Options
#######################################################################
LSFINCS = F
SFINCS_INC = -I$(SFINCS_DIR)
LIB_SFINCS = libsfincs.a

SFINCS_LIB = $(SFINCS_DIR)/$(LIB_SFINCS)

#######################################################################
# REGCOIL Options
#######################################################################
LREGCOIL= F
REGCOIL_DIR = $(REGCOIL_PATH)
REGCOIL_INC = -I$(REGCOIL_DIR)
LIB_REGCOIL = libregcoil.a
REGCOIL_LIB = $(REGCOIL_DIR)/$(LIB_REGCOIL) -fopenmp

#######################################################################
# Available Energy Options
#######################################################################
LAEOPT= F
AEOPT_DIR = $(AEOPT_PATH)
AEOPT_INC = -I$(AEOPT_DIR)
LIB_AEOPT = libtrapAE.a
AEOPT_LIB = $(AEOPT_PATH)/$(LIB_AEOPT)

#######################################################################
# LIBSTELL Shared Options
#######################################################################
LIB_SHARE = $(LIBS) $(NETCDF_LIB) $(HDF5_LIB) \
-lifport -lifcoremt -limf -lm -lc \
-lpthread

5 changes: 3 additions & 2 deletions make.inc
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Shamelessly stolen from ASCOT4
# Shamelessly adopted from ASCOT4
MACHINE ?= $(shell uname -n | \
awk '/dion-ubuntu/{print "ubuntu"}\
/Lazersons-Air/{print "macports"}\
Expand All @@ -13,7 +13,8 @@ MACHINE ?= $(shell uname -n | \
/Matts-MacBook-Pro/{print "macports_landreman"}\
/raven/{print "raven"}\
/cobra/{print "cobra"}\
/draco/{print "draco"}')
/draco/{print "draco"}\
/viper/{print "viper"}')

ifneq ($(strip $(MACHINE)),)
include $(STELLOPT_PATH)/SHARE/make_$(MACHINE).inc
Expand Down

0 comments on commit fddfa05

Please sign in to comment.