Skip to content

Commit

Permalink
(docs) updated list of possible SYSTEM= settings [skip ci]
Browse files Browse the repository at this point in the history
  • Loading branch information
danieljprice committed Jan 31, 2024
1 parent 09471be commit b52533b
Show file tree
Hide file tree
Showing 5 changed files with 114 additions and 76 deletions.
95 changes: 19 additions & 76 deletions build/Makefile_systems
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@
# Sensible compiler options for different compute systems
#----------------------------------------------------------------

ifeq ($(SYSTEM),cray)
ifeq ($(SYSTEM), cray)
# default settings for the Cray Fortran Compiler (ftn)
FC=ftn
FFLAGS=-Oaggress -Ovector3 -Oipa4
DBLFLAG= -s real64
Expand All @@ -15,7 +16,8 @@ ifeq ($(MAP),yes)
endif
endif

ifeq ($(SYSTEM),daint)
ifeq ($(SYSTEM), daint)
# piz-daint supercomputer facility https://www.cscs.ch/computers/piz-daint
include Makefile_defaults_ifort
FC=ftn
FFLAGS+= -heap-arrays
Expand All @@ -25,8 +27,8 @@ ifeq ($(MPI),daint)
endif
endif

ifeq ($(SYSTEM),xc40)
#massively copied from the Daint system
ifeq ($(SYSTEM), xc40)
# Cray XC40 machine, similar to the daint system
include Makefile_defaults_ifort
FC=ftn
FFLAGS+= -heap-arrays -dynamic
Expand All @@ -39,29 +41,6 @@ ifeq ($(MPI),xc40)
endif
endif

ifeq ($(SYSTEM), msg)
include Makefile_defaults_ifort
QSYS = sge
QSHELL = tcsh
ifeq ($(OPENMP),yes)
QPE = smp
NOMP = '$$NSLOTS'
ifndef NPAR
NPAR = '4-32'
endif
endif
ifeq ($(MPI),yes)
QPE = mpi
ifeq ($(OPENMP),yes)
QPE = mqu4
NOMP = 4
endif
endif
#QEXTRA='-l dpod=true -q mqu2'
#HDF5=yes
# HDF5ROOT=/opt/sw/hdf5-1.8.0/
endif

ifeq ($(SYSTEM), m2)
# MASSIVE facility: massive.org.au
include Makefile_defaults_ifort
Expand All @@ -75,24 +54,8 @@ ifeq ($(SYSTEM), m2)
WALLTIME='500:00:00'
endif

ifeq ($(SYSTEM), g2)
# gstar facility
# Note: gstar has nomp=12; sstar has nomp=16
include Makefile_defaults_ifort
QSYS = pbs
ifeq ($(OPENMP),yes)
NOMP='16'
else
NOMP='1'
endif
QNAME='sstar'
QNODES='nodes='$(NMPI)':ppn='$(NOMP)
WALLTIME='168:00:00'
MPIEXEC='mpiexec -npernode 1'
endif

ifeq ($(SYSTEM), ozstar)
# ozstar facility
# ozstar facility using ifort https://supercomputing.swin.edu.au/ozstar/
include Makefile_defaults_ifort
OMPFLAGS=-qopenmp
NOMP=32
Expand All @@ -102,7 +65,7 @@ ifeq ($(SYSTEM), ozstar)
endif

ifeq ($(SYSTEM), nt)
# ozstar milan cluster
# ozstar milan cluster using aocc (Ngarru Tindebeek)
include Makefile_defaults_aocc
OMPFLAGS=-fopenmp
NOMP='32'
Expand Down Expand Up @@ -132,6 +95,7 @@ ifeq ($(SYSTEM), ipopeyearch)
endif

ifeq ($(SYSTEM), monarch)
# Monarch cluster at Monash University
include Makefile_defaults_ifort
OMPFLAGS=-qopenmp -qopt-report
QSYS = slurm
Expand All @@ -140,12 +104,6 @@ ifeq ($(SYSTEM), monarch)
QPARTITION='comp'
endif

ifeq ($(SYSTEM), monarchpsxe)
include Makefile_defaults_ifort
QSYS = slurm
QPROJECT='p01'
endif

ifeq ($(SYSTEM), nci)
# gadi (NCI machine)
include Makefile_defaults_ifort
Expand All @@ -169,29 +127,10 @@ ifeq ($(SYSTEM), nci)
endif

ifeq ($(SYSTEM), gfortran)
# default settings for the gfortran compiler
include Makefile_defaults_gfortran
endif

ifeq ($(SYSTEM), gfortranOSX) # for use with mac gfortran (5.3.0, 7.3.0 tested)
include Makefile_defaults_gfortran
endif

ifeq ($(SYSTEM), gfortran44)
include Makefile_defaults_gfortran
FC= gfortran -gdwarf-2
FFLAGS= -O3 -Wall -frecord-marker=4 -finline-functions-called-once -finline-limit=1500 -funroll-loops -ftree-vectorize
DEBUGFLAG= -g -frange-check -ffpe-trap=invalid,denormal -finit-real=nan -finit-integer=nan -fbacktrace
endif

ifeq ($(SYSTEM), gfortran47)
include Makefile_defaults_gfortran
FC= gfortran-mp-4.7 -gdwarf-2
FFLAGS= -Wall -m64 -O3 -ffast-math -funroll-loops -ftree-loop-linear \
-finline-functions-called-once \
-fomit-frame-pointer -finline-limit=3000 --param min-vect-loop-bound=2
DEBUGFLAG= -Wextra -g -frange-check -fcheck=all -ffpe-trap=denormal -finit-real=nan -finit-integer=nan -fbacktrace
endif

ifeq ($(SYSTEM), complexity)
# complexity.leicester.dirac.ac.uk
include Makefile_defaults_ifort
Expand All @@ -205,7 +144,7 @@ ifeq ($(SYSTEM), complexity)
endif

ifeq ($(SYSTEM), isca)
# local cluster at the University of Exeter
# local cluster at the University of Exeter
include Makefile_defaults_ifort
FFLAGS= -O3 -axAVX \
-warn uninitialized -warn truncated_source\
Expand All @@ -217,7 +156,7 @@ ifeq ($(SYSTEM), isca)
endif

ifeq ($(SYSTEM), skylake)
# HPCs Skylake cluster at Cambridge
# HPCs Skylake cluster at Cambridge
include Makefile_defaults_ifort
FFLAGS= -O3 -shared-intel -warn uninitialized -warn unused -warn \
truncated_source -xCORE-AVX512 -ipo
Expand All @@ -229,31 +168,34 @@ ifeq ($(SYSTEM), skylake)
endif

ifeq ($(SYSTEM), kennedy)
# HPCs cluster at University of St. Andrews
# HPC cluster at University of St. Andrews
include Makefile_defaults_ifort
OMPFLAGS = -qopenmp
QSYS = slurm
endif

ifeq ($(SYSTEM), ifort)
# default settings for the Intel Fortran Compiler
include Makefile_defaults_ifort
endif

ifeq ($(SYSTEM), ifortmac)
# default settings for the Intel Fortran Compiler on Mac OS
include Makefile_defaults_ifort
FFLAGS= -O3 -xhost -shared-intel -warn uninitialized \
-warn unused -warn truncated_source -Wl,-rpath,/opt/intel/lib
DEBUGFLAG= -check all -WB -traceback -g -fpe0 -fp-stack-check
endif

ifeq ($(SYSTEM), ifortgcc)
# Intel Fortran Compiler but gcc for C
include Makefile_defaults_ifort
CC = gcc
CCFLAGS = -O3
endif

ifeq ($(SYSTEM), hydra)
# this configuration works for the hydra cluster http://www.mpcdf.mpg.de/services/computing/hydra
# this configuration works for the hydra cluster http://www.mpcdf.mpg.de/services/computing/hydra
include Makefile_defaults_ifort
FFLAGS= -O3 -xavx -ip -shared-intel -warn uninitialized \
-warn unused -warn truncated_source
Expand All @@ -262,7 +204,7 @@ ifeq ($(SYSTEM), hydra)
endif

ifeq ($(SYSTEM), lyoccf)
# LIO CCF cluster
# LIO CCF cluster
include Makefile_defaults_ifort
FFLAGS= -O3 -ftz -xavx -cpp -sox -fno-alias -fno-fnalias \
-no-prec-div -no-prec-sqrt -align all -warn uninitialized \
Expand All @@ -271,5 +213,6 @@ ifeq ($(SYSTEM), lyoccf)
endif

ifeq ($(SYSTEM), aocc)
# default settings for the AMD optimized fortran compiler (aocc)
include Makefile_defaults_aocc
endif
1 change: 1 addition & 0 deletions docs/running-first-calculation.rst
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,7 @@ can specify this by including it on the command line every time you compile the
A list of current options for the SYSTEM variable is given below, please contribute
if you have configured phantom for your local cluster so that others can benefit:

.. include:: systems-list.rst

Running an example calculation
------------------------------
Expand Down
41 changes: 41 additions & 0 deletions docs/scripts/print_systems.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
#!/bin/bash
#
# script to print out information about all the SETUP= options
# from the phantom Makefile
#
phantomdir='../../'
url="https://github.com/danieljprice/phantom/blob/master/"
echo ""
echo ".. tabularcolumns:: |p{3cm}|p{15cm}|"
echo ""
echo ".. table:: List of possible SYSTEM configurations"
echo " :widths: auto"
echo ""
printf "+"
printf -- '-%.0s' {1..18}
printf "+"
printf -- '-%.0s' {1..123}
printf "+\n"
printf "| %-16s | %-121s | \n" "SYSTEM=" "description"
printf "+"
printf -- '=%.0s' {1..18}
printf "+"
printf -- '=%.0s' {1..123}
printf "+\n"
print_system()
{
system=$1;
descript=`grep -A 1 "ifeq (\\$(SYSTEM), $system)" $phantomdir/build/Makefile_systems | grep '#' | cut -d'#' -f 2 | tail -1 | xargs`
#lineno=`grep -n "ifeq (\\$(SETUP), $setup)" $phantomdir/build/Makefile_setups | cut -d':' -f 1`
printf "| %-16s | %-121s | \n" "$system" "$descript"
printf "+"
printf -- '-%.0s' {1..18}
printf "+"
printf -- '-%.0s' {1..123}
printf "+\n"
}
listofsystems=`grep 'ifeq ($(SYSTEM)' $phantomdir/build/Makefile_systems | grep -v skip | cut -d, -f 2 | cut -d')' -f 1 | sort`
for system in $listofsystems; do
print_system $system
done
echo
1 change: 1 addition & 0 deletions docs/scripts/update_docs_from_code.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,4 @@
./eos_options.pl > ../eos-list.rst
./print_setups.sh > ../setups-list.rst
./print_setups.sh best > ../setups-best.rst
./print_systems.sh > ../systems-list.rst
52 changes: 52 additions & 0 deletions docs/systems-list.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@

.. tabularcolumns:: |p{3cm}|p{15cm}|

.. table:: List of possible SYSTEM configurations
:widths: auto

+------------------+---------------------------------------------------------------------------------------------------------------------------+
| SYSTEM= | description |
+==================+===========================================================================================================================+
| aocc | default settings for the AMD optimized fortran compiler (aocc) |
+------------------+---------------------------------------------------------------------------------------------------------------------------+
| complexity | complexity.leicester.dirac.ac.uk |
+------------------+---------------------------------------------------------------------------------------------------------------------------+
| cray | default settings for the Cray Fortran Compiler (ftn) |
+------------------+---------------------------------------------------------------------------------------------------------------------------+
| daint | piz-daint supercomputer facility https://www.cscs.ch/computers/piz-daint |
+------------------+---------------------------------------------------------------------------------------------------------------------------+
| gfortran | default settings for the gfortran compiler |
+------------------+---------------------------------------------------------------------------------------------------------------------------+
| hydra | this configuration works for the hydra cluster http://www.mpcdf.mpg.de/services/computing/hydra |
+------------------+---------------------------------------------------------------------------------------------------------------------------+
| ifort | default settings for the Intel Fortran Compiler |
+------------------+---------------------------------------------------------------------------------------------------------------------------+
| ifortgcc | Intel Fortran Compiler but gcc for C |
+------------------+---------------------------------------------------------------------------------------------------------------------------+
| ifortmac | default settings for the Intel Fortran Compiler on Mac OS |
+------------------+---------------------------------------------------------------------------------------------------------------------------+
| ipopeyearch | Flatiron CCA popeye cluster icelake node |
+------------------+---------------------------------------------------------------------------------------------------------------------------+
| isca | local cluster at the University of Exeter |
+------------------+---------------------------------------------------------------------------------------------------------------------------+
| kennedy | HPC cluster at University of St. Andrews |
+------------------+---------------------------------------------------------------------------------------------------------------------------+
| lyoccf | LIO CCF cluster |
+------------------+---------------------------------------------------------------------------------------------------------------------------+
| m2 | MASSIVE facility: massive.org.au |
+------------------+---------------------------------------------------------------------------------------------------------------------------+
| monarch | Monarch cluster at Monash University |
+------------------+---------------------------------------------------------------------------------------------------------------------------+
| nci | gadi (NCI machine) |
+------------------+---------------------------------------------------------------------------------------------------------------------------+
| nt | ozstar milan cluster using aocc (Ngarru Tindebeek) |
+------------------+---------------------------------------------------------------------------------------------------------------------------+
| ozstar | ozstar facility using ifort https://supercomputing.swin.edu.au/ozstar/ |
+------------------+---------------------------------------------------------------------------------------------------------------------------+
| rusty | Flatiron CCA rusty cluster rome node, AMD EPYC 7742 |
+------------------+---------------------------------------------------------------------------------------------------------------------------+
| skylake | HPCs Skylake cluster at Cambridge |
+------------------+---------------------------------------------------------------------------------------------------------------------------+
| xc40 | Cray XC40 machine, similar to the daint system |
+------------------+---------------------------------------------------------------------------------------------------------------------------+

0 comments on commit b52533b

Please sign in to comment.