This page documents how to run SCREAMv1 on supported machines.
Notes:
cori-intel optimized build has an internal compiler error (in shoc_assumed_pdf.cpp?). Avoid this by building in debug mode. Or run with gnu compiler on cori if you want to build optimized.
perlmutter optimized build yields corrupted answers (really hot planet). Avoid this by building in debug mode.
ne120 fails with OOM(?) errors right now when SPA is active. Delete that proc in namelist_scream.xmlne512 and ne1024 are too big to use SPA right now (will OOM). Run them with “no SPA” (prescribed drop #, no aerosol in radiation) by using the
F2010-SCREAMv1-noAero
compset. Several fixes are in the works.For perlmutter: you need to use the gnugpu compiler and set
--gpu-bind=none
inenv_batch.xml
:Code Block <directives compiler="gnugpu"> <directive> --gpus-per-task=1</directive> <directive> --gpu-bind=none</directive>
...
ne4 (max = 96) | ne30 (max = 5,400) | ne120 (max = 86,400) | ne256 (max = 393,216) | ne512 (max = 1,572,864) | ne1024 (max = 6,291,456) | |
---|---|---|---|---|---|---|
cori-knl (68 cores/node; 96+16 GB/node) | 16x1 | 675x1 | 4096x1 | 3072x1 MAX_MPITASKS_PER_NODE = 8 | ||
perlmutter pm-gpu (64 cores/node; 4 GPUs/node; 256 GB/node)12x1 | 16x1 | |||||
pm-cpu (128 cores/node; 512 GB/node) | ||||||
syrah (16 cores/node; 64 GB/node) | 32x1 | 160x1 | 1600x1 | |||
quartz (36 cores/node; 128 GB/node) | 72x1 | 180x1 | 1800x1 | |||
summit (8 cores/node?; 6 GPUs/node; 512+96 GB/node) | 256x1 | 4096x1 |
...
Location where CIME puts run: | available compilers | |
---|---|---|
cori-knl | /global/cscratch1/sd/${USER}/e3sm_scratch/cori-knl/ | intel, gnu |
perlmutterpm-gpu | /pscratch/sd/{first-letter-of-username/${USER}/e3sm_scratch/perlmutterpm-gpu/ | gnugpu, nvidiagpu, gnu, nvidia |
pm-cpu | /pscratch/sd/{first-letter-of-username/${USER}/e3sm_scratch/pm-cpu/ | gnu, nvidia |
syrah | /p/lustre2/${USER}/e3sm_scratch/syrah/ | intel |
quartz | /p/lustre2/${USER}/e3sm_scratch/quartz/ | intel |
summit | /gpfs/alpine/cli115/proj-shared/${USER}/e3sm_scratch/ for run stuff | gnugpu, ibmgpu, pgigpu, gnu, ibm, pgi |
...