Skip to content

Commit

Permalink
Merge pull request #4 from dabail10/master
Browse files Browse the repository at this point in the history
Added machine support for NCAR's cheyenne machine.
  • Loading branch information
apcraig authored Jun 1, 2017
2 parents b54c253 + 35ce400 commit 0e04c83
Show file tree
Hide file tree
Showing 3 changed files with 109 additions and 0 deletions.
19 changes: 19 additions & 0 deletions configuration/scripts/cice.run.setup.csh
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,20 @@ cat >> ${jobfile} << EOFB
#BSUB -P ${acct}
EOFB

#==========================================

elseif (${CICE_MACHINE} =~ cheyenne*) then
cat >> ${jobfile} << EOFB
#PBS -j oe
#PBS -m ae
#PBS -V
#PBS -q regular
#PBS -N ${CICE_CASENAME}
#PBS -A ${CICE_ACCT}
#PBS -l select=${nnodes}:ncpus=${ntasks}:mpiprocs=${ntasks}
#PBS -l walltime=02:00:00
EOFB

else if (${CICE_MACHINE} =~ thunder* || ${CICE_MACHINE} =~ gordon* || ${CICE_MACHINE} =~ conrad*) then
cat >> ${jobfile} << EOFB
#PBS -N ${CICE_CASENAME}
Expand Down Expand Up @@ -145,6 +159,11 @@ setenv MP_TASK_AFFINITY core:\${OMP_NUM_THREADS}
mpirun.lsf ./cice >&! \$CICE_RUNLOG_FILE
EOFR

elseif (${CICE_MACHINE} =~ cheyenne*) then
cat >> ${jobfile} << EOFR
mpiexec_mpt -n ${ntasks} ./cice >&! \$CICE_RUNLOG_FILE
EOFR

else if (${CICE_MACHINE} =~ thunder*) then
cat >> ${jobfile} << EOFR
mpiexec_mpt -np ${ntasks} omplace ./cice >&! \$CICE_RUNLOG_FILE
Expand Down
67 changes: 67 additions & 0 deletions configuration/scripts/machines/Macros.cheyenne
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
#==============================================================================
# Makefile macros for "yellowstone" an NCAR Linux Cluster
#==============================================================================
# For use with intel compiler
#==============================================================================

CPP := fpp
CPPDEFS := -DFORTRANUNDERSCORE -DNO_R16 -DHAVE_F2008_CONTIGUOUS -DLINUX -DCPRINTEL ${CICE_CPPDEFS}
CFLAGS := -c -O2 -fp-model precise -xHost

FIXEDFLAGS := -132
FREEFLAGS := -FR
FFLAGS := -O2 -fp-model precise -convert big_endian -assume byterecl -ftz -traceback -xHost
FFLAGS_NOOPT:= -O0

ifeq ($(CICE_COMMDIR), mpi)
FC := mpif90
else
FC := ifort
endif

MPICC:= mpicc

MPIFC:= mpif90
LD:= $(MPIFC)

NETCDF_PATH := $(NETCDF)

PIO_CONFIG_OPTS:= --enable-filesystem-hints=gpfs

#PNETCDF_PATH := $(PNETCDF)
PNETCDF_PATH := /glade/u/apps/ch/opt/pio/2.2/mpt/2.15f/intel/17.0.1/lib

INCLDIR := $(INCLDIR)

LIB_NETCDF := $(NETCDF_PATH)/lib
LIB_PNETCDF := $(PNETCDF_PATH)/lib
LIB_MPI := $(IMPILIBDIR)

SLIBS := -L$(LIB_NETCDF) -lnetcdf -lnetcdff -L$(LIB_PNETCDF) -lpnetcdf -lgptl

SCC:= icc

SFC:= ifort

ifeq ($(compile_threaded), true)
LDFLAGS += -openmp
CFLAGS += -openmp
FFLAGS += -openmp
endif

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

### if using parallel I/O, load all 3 libraries. PIO must be first!
ifeq ($(IO_TYPE), pio)
PIO_PATH:=/glade/u/apps/ch/opt/pio/2.2/mpt/2.15f/intel/17.0.1/lib
INCLDIR += -I/glade/u/apps/ch/opt/pio/2.2/mpt/2.15f/intel/17.0.1/include
SLIBS := $(SLIBS) -L$(PIO_PATH) -lpiof

CPPDEFS := $(CPPDEFS) -Dncdf
endif

ifeq ($(IO_TYPE), netcdf)
CPPDEFS := $(CPPDEFS) -Dncdf
endif
23 changes: 23 additions & 0 deletions configuration/scripts/machines/env.cheyenne
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
#!/bin/csh -f

source /glade/u/apps/ch/opt/lmod/7.2.1/lmod/7.2.1/init/csh

module purge
module load ncarenv/1.1
module load intel/17.0.1
module load mpt/2.15f
module load ncarcompilers/0.4.1
module load pio/2.2.0

setenv CICE_MACHINE_ENVNAME cheyenne
setenv CICE_MACHINE_WKDIR /glade/scratch/$user/CICE_RUNS
setenv CICE_MACHINE_INPUTDATA /glade/p/work/dbailey/atm/gx3v2m/NCAR_bulk
setenv CICE_MACHINE_SUBMIT "qsub"
setenv CICE_MACHINE_TPNODE 36
setenv CICE_MACHINE_ACCT P0000000
setenv CICE_MACHINE_BLDTHRDS 1

if (-e ~/.cice_proj) then
set account_name = `head -1 ~/.cice_proj`
setenv CICE_ACCT ${account_name}
endif

0 comments on commit 0e04c83

Please sign in to comment.