Skip to content

Full Model Testing

Full model system testing of eamxx is done through CIME test cases (much like the rest of E3SM).

We offer a number of test suites, including: * e3sm_scream_v0: Test the full set of V0 (pre-C++) tests * e3sm_scream_v1: Test the full set of V1 (C++) tests * e3sm_scream_v1_at: A smaller and quicker set of tests for autotesting * e3sm_scream_hires: A small number of bigger, longer-running tests to measure performance

Example for running a suite:

% cd $repo/cime/scripts
% ./create_test e3sm_scream_v1_at --wait

Example for running a single test case:

% cd $repo/cime/scripts
% ./create_test SMS.ne4_ne4.F2010-SCREAMv1 --wait

There are many behavioral tweaks you can make to a test case, like changing the run length, test type, etc. Most of this is not specific to eamxx and works for any CIME case. This generic stuff is well-documentated here: http://esmci.github.io/cime/versions/master/html/users_guide/testing.html

When it comes to things specific to eamxx, you have grids, compsets, and testmods.

Common EAMxx grids are: * ne4_ne4 (low resolution) * ne4pg2_ne4pg2 (low resolution with phys grid) * ne30_ne30 (med resolution) * ne30pg2_ne30pg2 (med resolution with phys grid) * ne1024pg2_ne1024pg2 (ultra high with phys grid)

More grid info can be found here: https://acme-climate.atlassian.net/wiki/spaces/DOC/pages/933986549/ATM+Grid+Resolution+Summary

Common EAMxx compsets are: * F2010-SCREAM-LR: V0 low res compset with eamxx V0 atmosphere * F2010-SCREAMv1: V1 standard compset with eamxx V1 atmosphere * FIOP-SCREAMv1-DP: V1 with dpxx (doubly-periodic lateral boundary condition in C++) * F2010-SCREAMv1-noAero: V1 without aerosol forcing

Full info on supported compsets can be found by looking at this file: $scream_repo/components/eamxx/cime_config/config_compsets.xml

Common EAMxx testmods are: * small_kernels: Enable smaller-granularity kernels, can improve performance on some systems * scream-output-preset-[1-6]: Our 6 output presets. These turn some combination of our three output streams (phys_dyn, phys, and diags), various remaps, etc. * bfbhash: Turns on bit-for-bit hash output: https://acme-climate.atlassian.net/wiki/spaces/NGDNA/pages/3831923056/EAMxx+BFB+hashing

More info on running EAMxx can be found here: https://acme-climate.atlassian.net/wiki/spaces/DOC/pages/3386015745/How+To+Run+EAMxx+SCREAMv1