Created
November 30, 2020 16:15
-
-
Save smhr/a7070cdd741e3a427e6ce774979036c8 to your computer and use it in GitHub Desktop.
Enzo machine file for Scicluster
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#======================================================================= | |
# | |
# FILE: Make.mach.scicluster | |
# | |
# DESCRIPTION: Makefile settings for scicluster at FUM | |
# | |
# AUTHOR: S. Mohammad Hosseinirad ([email protected]) | |
# | |
# DATE: 2020-11-30 | |
# | |
#======================================================================= | |
MACH_TEXT = Scicluster | |
MACH_VALID = 1 | |
MACH_FILE = Make.mach.scicluster | |
MACH_NOTES = 'Please load this modules:\ | |
module load HDF5/1.10.2-gompi-2018b \ | |
before compiling or running enzo.\ | |
gmake machine-scicluster\ | |
gmake opt-high\ | |
make show-config\ | |
make -j 8\ | |
' | |
#----------------------------------------------------------------------- | |
# Install paths (local variables) | |
#----------------------------------------------------------------------- | |
LOCAL_HDF5_INSTALL = /home/modules/software/HDF5/1.10.2-gompi-2018b # mandatory | |
LOCAL_GRACKLE_INSTALL = /PATH/TO/GRACKLE/INSTALL # optional | |
LOCAL_HYPRE_INSTALL = /PATH/TO/HYPRE/INSTALL # optional | |
#----------------------------------------------------------------------- | |
# Compiler settings | |
#----------------------------------------------------------------------- | |
MACH_CPP = cpp # C preprocessor command | |
# With MPI | |
MACH_CC_MPI = mpicc # C compiler when using MPI | |
MACH_CXX_MPI = mpic++ # C++ compiler when using MPI | |
MACH_FC_MPI = gfortran # Fortran 77 compiler when using MPI | |
MACH_F90_MPI = gfortran # Fortran 90 compiler when using MPI | |
MACH_LD_MPI = mpic++ # Linker when using MPI | |
# Without MPI | |
MACH_CC_NOMPI = gcc # C compiler when not using MPI | |
MACH_CXX_NOMPI = g++ # C++ compiler when not using MPI | |
MACH_FC_NOMPI = gfortran # Fortran 77 compiler when not using MPI | |
MACH_F90_NOMPI = gfortran # Fortran 90 compiler when not using MPI | |
MACH_LD_NOMPI = g++ # Linker when not using MPI | |
#----------------------------------------------------------------------- | |
# Machine-dependent defines | |
#----------------------------------------------------------------------- | |
MACH_DEFINES = -DLINUX -DH5_USE_16_API | |
#----------------------------------------------------------------------- | |
# Compiler flag settings | |
#----------------------------------------------------------------------- | |
MACH_CPPFLAGS = -P -traditional | |
MACH_CFLAGS = | |
MACH_CXXFLAGS = | |
MACH_FFLAGS = -fno-second-underscore -ffixed-line-length-132 | |
MACH_F90FLAGS = -fno-second-underscore | |
MACH_LDFLAGS = | |
#----------------------------------------------------------------------- | |
# Optimization flags | |
#----------------------------------------------------------------------- | |
MACH_OPT_WARN = -Wall -g | |
MACH_OPT_DEBUG = -g | |
MACH_OPT_HIGH = -O2 | |
MACH_OPT_AGGRESSIVE = -O3 -g | |
#----------------------------------------------------------------------- | |
# Includes | |
#----------------------------------------------------------------------- | |
LOCAL_INCLUDES_MPI = # MPI includes | |
LOCAL_INCLUDES_HDF5 = -I$(LOCAL_HDF5_INSTALL)/ # HDF5 includes | |
LOCAL_INCLUDES_HYPRE = -I$(LOCAL_HYPRE_INSTALL)/include | |
LOCAL_INCLUDES_PAPI = # PAPI includes | |
LOCAL_INCLUDES_GRACKLE = -I$(LOCAL_GRACKLE_INSTALL)/include | |
MACH_INCLUDES = $(LOCAL_INCLUDES_HDF5) | |
MACH_INCLUDES_MPI = $(LOCAL_INCLUDES_MPI) | |
MACH_INCLUDES_HYPRE = $(LOCAL_INCLUDES_HYPRE) | |
MACH_INCLUDES_PAPI = $(LOCAL_INCLUDES_PAPI) | |
MACH_INCLUDES_GRACKLE = $(LOCAL_INCLUDES_GRACKLE) | |
#----------------------------------------------------------------------- | |
# Libraries | |
#----------------------------------------------------------------------- | |
LOCAL_LIBS_MPI = # MPI libraries | |
LOCAL_LIBS_HDF5 = -L$(LOCAL_HDF5_INSTALL) -lhdf5 -lz | |
LOCAL_LIBS_HYPRE = -L$(LOCAL_HYPRE_INSTALL)/lib -lHYPRE | |
LOCAL_LIBS_PAPI = # PAPI libraries | |
LOCAL_LIBS_MACH = -lgfortran # Machine-dependent libraries | |
LOCAL_LIBS_GRACKLE = -L$(LOCAL_GRACKLE_INSTALL)/lib -lgrackle | |
MACH_LIBS = $(LOCAL_LIBS_HDF5) $(LOCAL_LIBS_MACH) | |
MACH_LIBS_MPI = $(LOCAL_LIBS_MPI) | |
MACH_LIBS_HYPRE = $(LOCAL_LIBS_HYPRE) | |
MACH_LIBS_PAPI = $(LOCAL_LIBS_PAPI) | |
MACH_LIBS_GRACKLE = $(LOCAL_LIBS_GRACKLE) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment