Skip to content

Commit

Permalink
Add DMI Cray XC50 hpc (freya) to machines. Based on Banting
Browse files Browse the repository at this point in the history
  • Loading branch information
TillRasmussen committed Nov 2, 2020
1 parent 12fdb47 commit 5f580c1
Show file tree
Hide file tree
Showing 4 changed files with 114 additions and 2 deletions.
2 changes: 1 addition & 1 deletion configuration/scripts/cice.batch.csh
Original file line number Diff line number Diff line change
Expand Up @@ -185,7 +185,7 @@ cat >> ${jobfile} << EOFB
#SBATCH --qos=standby
EOFB

else if (${ICE_MACHINE} =~ daley* || ${ICE_MACHINE} =~ banting*) then
else if (${ICE_MACHINE} =~ daley* || ${ICE_MACHINE} =~ banting* || ${ICE_MACHINE} =~ freya* ) then
cat >> ${jobfile} << EOFB
#PBS -N ${ICE_CASENAME}
#PBS -j oe
Expand Down
2 changes: 1 addition & 1 deletion configuration/scripts/cice.launch.csh
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,7 @@ EOFR
endif

#=======
else if (${ICE_MACHINE} =~ daley* || ${ICE_MACHINE} =~ banting*) then
else if (${ICE_MACHINE} =~ daley* || ${ICE_MACHINE} =~ banting* || ${ICE_MACHINE} =~ freya*) then
if (${ICE_COMMDIR} =~ serial*) then
cat >> ${jobfile} << EOFR
./cice >&! \$ICE_RUNLOG_FILE
Expand Down
75 changes: 75 additions & 0 deletions configuration/scripts/machines/Macros.freya_intel
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
#==============================================================================
# Makefile macros for DMI Freya based on ECCC banting
#==============================================================================
# For use with intel compiler
#==============================================================================

#INCLDIR := -I. -I/usr/include
#SLIBS :=

#--- Compiler/preprocessor ---
FC := ftn
CC := cc
CXX := CC
CPP := /usr/bin/cpp
CPPFLAGS := -P -traditional # ALLOW fortran double backslash "\\"
SCC := gcc
SFC := ftn

CPPDEFS := -DFORTRANUNDERSCORE ${ICE_CPPDEFS}
CFLAGS := -c -O2 -fp-model precise

# Additional flags
FIXEDFLAGS := -132
FREEFLAGS := -FR
FFLAGS := -fp-model source -convert big_endian -assume byterecl -ftz -traceback -no-wrap-margin
#-xHost

ifeq ($(ICE_BLDDEBUG), true)
FFLAGS += -O0 -g -check -fpe0 -ftrapuv -fp-model except -check noarg_temp_created
# -heap-arrays 1024
else
FFLAGS += -O2
endif
LD := $(FC)
LDFLAGS := $(FFLAGS) -v
#ifeq ($(ICE_BLDDEBUG), true)
#FFLAGS := -O0 -g -check uninit -check bounds -check pointers -fpe0 -check noarg_temp_created
#FFLAGS := -g -O0 -traceback -fp-model precise -fp-stack-check -fpe0
#else
#FFLAGS := -r8 -i4 -O2 -align all -w -ftz -assume byterecl
# FFLAGS := -O2 -fp-model precise -assume byterecl -ftz -traceback -xHost
#endif
# Preprocessor flags
#CPPDEFS := -DLINUX $(ICE_CPPDEFS)

# Linker flags

# Additional flags

ifeq ($(DITTO), yes)
CPPDEFS := $(CPPDEFS) -DREPRODUCIBLE
endif


ifeq ($(ICE_THREADED), true)
LDFLAGS += -qopenmp
CFLAGS += -qopenmp
FFLAGS += -qopenmp
endif

#--- NetCDF ---
#ifeq ($(IO_TYPE), netcdf)
#
#endif
#
#ifeq ($(IO_TYPE), netcdf_bin)
# CPPDEFS := $(CPPDEFS) -Dncdf
#endif

### if using parallel I/O, load all 3 libraries. PIO must be first!
#ifeq ($(ICE_IOTYPE), pio)
# PIO_PATH:=/usr/projects/climate/SHARED_CLIMATE/software/conejo/pio/1.7.2/intel-13.0.1/openmpi-1.6.3/netcdf-3.6.3-parallel-netcdf-1.3.1/include
# INCLDIR += -I$(PIO_PATH)
# SLIBS := $(SLIBS) -L$(PIO_PATH) -lpio
#endif
37 changes: 37 additions & 0 deletions configuration/scripts/machines/env.freya_intel
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
#!/bin/csh -f

set inp = "undefined"
if ($#argv == 1) then
set inp = $1
endif

if ("$inp" != "-nomodules") then

source /opt/modules/default/init/csh # Initialize modules for csh
module rm PrgEnv-intel
module rm PrgEnv-cray
module rm PrgEnv-gnu
module add PrgEnv-intel
#module load PrgEnv-intel # Intel compiler
#module load cray-mpich # MPI (Cray MPICH)
module add cray-netcdf # NetCDF
module add cray-hdf5 # HDF5
#setenv HDF5_USE_FILE_LOCKING FALSE # necessary since data is on an NFS filesystem

endif

setenv ICE_MACHINE_MACHNAME freya
setenv ICE_MACHINE_MACHINFO "Cray XC50, Intel Xeon Gold 6148 (Skylake) NOT SURE-TILL"
setenv ICE_MACHINE_ENVNAME intel
setenv ICE_MACHINE_ENVINFO "Intel 18.0.0.128, cray-mpich/7.7.0, cray-netcdf/4.4.1.1.6"
setenv ICE_MACHINE_MAKE make
setenv ICE_MACHINE_WKDIR /data/${USER}/cice_original/run/
setenv ICE_MACHINE_INPUTDATA /data/${USER}/cice_original/
setenv ICE_MACHINE_BASELINE /data/${USER}/cice_original/dbaselines/
setenv ICE_MACHINE_SUBMIT "qsub"
setenv ICE_MACHINE_TPNODE 40
setenv ICE_MACHINE_MAXRUNLENGTH 3
setenv ICE_MACHINE_ACCT P0000000
setenv ICE_MACHINE_QUEUE "development"
setenv ICE_MACHINE_BLDTHRDS 18
setenv ICE_MACHINE_QSTAT "qstat "

0 comments on commit 5f580c1

Please sign in to comment.