Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

These are the test types available with CIME.

See See https://github.com/ESMCI/cime/blob/master/config/config_tests.xmlCIME/SystemTests/README for latest.

The following are the test functionality categories:
  1) smoke tests
  2) basic reproducibility tests
  3) restart tests
  34) threading/pe-count modification tests
  45) sequencing (layout) modification tests
  56) multi-instance tests
  67) ESMF interfaceperformance tests
  8) spinup tests (TODO)
7) archiving (short-term and long-term) 9) other component-specific tests

Some 8)tests performancenot testsyet implemented in 9)python. spinup testsThey (TODO)can be 10)found compiler flag assumptions (e.g. auto-promotion)


in
cime/scripts/Testing/Testcases


NOTES:

- unless otherwise noted everything IOP is runcurrently innot onefunctional
executable directory
- suffix: denotes the component history file suffixes that are added as part of the test
- IOP test is done along with regular tests - not as a separate test 
- IOP test is only currently valid for SMS, ERS and PET


======================================================================
    Smoke Tests
========================================================================================================
    Smoke Tests
=======================

SMS    smoke startup test (default length)
       do a 5 day initial test (suffix: base)
       if $IOP_ON is set then suffix is base_iop
       success for non-iop is just a successful coupler

===================================================

SMS    smoke startup test (default length) 
       do a 5 day initial test (suffix: base)
       if $IOP_ON is set then suffix is base_iop
       success for non-iop is just a successful coupler 

SBN    smoke build-namelist test (just run preview_namelist and check_input_data) 

===================
    Basic reproducibility Tests
======================================================================

REP    reproducibility: do two identical runs give the same results?

======================================================================
    Restart Tests
======================================================================

ERS    exact restart from startup (default 6 days + 5 days) 
       do an 11 day initial test - write a restart at day 6     (suffix: base)
       if $IOP_ON is set then suffix is base_iop
       do a  5  day restart test starting from restart at day 6 (suffix: rest)
       if $IOP_ON is set then suffix is rest_iop
       compare component history files ".base" and ".rest" at day 11


ERP    pes counts hybrid (open-MP/MPI) restart bfb test from startup, default 6 days + 5 days (previousy PER)
       initial pes set up out of the box
       do an 11 day initial test - write a restart at day 6     (suffix base)
        half the number of tasks and threads for each component
       do a  5  day restart test starting from restart at day 6 (suffix rest)
       this is just like an ERS test but the pe-counts/threading count are modified on retart

ERI    hybrid/branch/exact restart test, default (by default STOP_N is 22 days)
       (1) ref1case
           do an initial for ${STOP_N}/6 writing restarts at ${STOP_N}/6
           ref1 case is a clone of the main case (by default this will be 4 days)
           short term archiving is on
       (2) ref2case
           do a hybrid for ${STOP_N}-${STOP_N}/6 running with ref1 restarts from ${STOP_N}/6
           and writing restarts at ( ${STOP_N} - ${STOP_N}/6 )/2 +1 
	   (by default will run for 18 days and write a restart after 10 days)
           ref2 case is a clone of the main case 
           short term archiving is on
       (3) case 
           do a branch run starting from restart written in ref2 case
	           and run for  and run for ???  days
       (4) case do a restart run from the branch case

ERT  Similar to ERS but longer.  2 months + 1 month


======================================================================
    Threading/PE-Counts/Pe-SequencingRestart and Archive Tests
======================================================================
ERR PETdoes an ERS test modifiedexcept threadingthat openmpafter bfbthe testinitial (seqrun tests)the short term archive tool is run
 do an initial run where all components arewhich threadedmoves bymodel defaultoutput (suffix: base)
       do another initial run with nthrds=1 for all components        (suffix: single_thread)
       compare base and single_thread

PEM    modified pe counts mpi bfb test (seq tests)
       do an initial run with default pe layout                       (suffix: base)
       do another initial run with half tasks, same threads           (suffix: modpes)
       compare base and modpes

PMT    modified-task and modified-thread count bfb test (previousy OEM)
       do an initial run          out of the run directory into the short-term archive directory
        then the restart run is staged from the short term archive directory.  In batch mode there are
	four submitted jobs for this test (mira excepted) these are run1, sta1, run2 and sta2
	run1 and sta1 are submitted together with RESUBMIT=1.  sta1 has a batch system dependancy
 	on successful completion of run1, when sta1 is completed it uses the cime resubmit capabilty
	to submit run2.


======================================================================
    Threading/PE-Counts/Pe-Sequencing Tests
======================================================================

PET    modified threading openmp bfb test (seq tests)
       do an initial run where all components are threaded by default  (suffix: base)
       do aanother secondinitial run with half tasks, twice threadsnthrds=1 for all components        (suffix: modpessingle_thread)
       compare (***note that PMT_script and PEM_script are the same - but PEM_build.csh and PMT_build.csh are different***)

PEA    single pe bfb testbase and single_thread

PEM    modified pe counts mpi bfb test (seq tests)
       do an initial run with default pe layout                  do an initial run on 1 pe with mpi     (suffix: base)
       do theanother sameinitial run onwith 1modified pepes with mpiserial (suffix: mpiserial)

======================================================================(NTASKS_XXX => NTASKS_XXX/2)  (suffix: modpes)
       compare base and single_thread

PEA    single pe bfb test
      Sequencing (layout)do Testsan (smoke)
==========initial run on 1 pe with mpi     (suffix: base)
       do the same run on 1 pe with mpiserial (suffix: mpiserial)

======================================================================
 SEQ   Sequencing different sequencing bfb test  
       do an initial run test with out-of-box PE-layout (suffix: base)
       do a second run where all root pes are at pe-0   (suffix: seq)
       compare base and seq

(layout) Tests (smoke)
==================================================================================


SEQ    Multi-Instancedifferent Testssequencing (smoke)
===================================bfb test
       do an initial run test with out-of-box PE-layout (suffix: base)
       do a second run where all root pes are at pe-0   (suffix: seq)
       compare base and seq

====================================

NCK    multi-instance validation vs single instance - sequential PE for instances (default length)
       do an initial run test with ==================================
    Multi-Instance Tests (smoke)
======================================================================

NCK    multi-instance validation vs single instance - sequential PE for instances (default length)
       do an initial run test with NINST 1 (suffix: base)
       do an initial run test with NINST 2 (suffix: multiinst for both _0001 and _0002)
       compare base and _0001 and _0002

NCR    multi-instance validation vs single instance - concurrent PE for instances  (default length)
       do an initial run test with NINST 1 (suffix: base)
       do an initial run test with NINST 2 (suffix: multiinst for both _0001 and _0002)
        compare base and _0001 and _0002
       (***note that NCR_script and NCK_script are the same - but NCR_build.csh and NCK_build.csh are different***)

NOC    multi-instance validation for single instance ocean (default length)
       do an initial run test with NINST 2 (other than ocn), with mod to instance 1 (suffix: inst1_base, inst2_mod)
       do an initial run test with NINST 2 (other than ocn), with mod to instance 2 (suffix: inst1_base, inst2_mod)
       compare inst1_base with inst2_base 
       compare inst1_mod  with inst2_mod  


======================================================================
    ESMF Tests (smoke)
======================================================================

CME    compare mct and esmf interfaces (default is 10 days for each) 
       do a  MCT  run (suffix: base)
       do an ESMF run (suffix: esmf) 
       compare base with esmf

======================================================================
    Performance Tests
======================================================================

PFS    system performance test
ICP    cice performance test 
OCP    pop performance test 

======================================================================
    SPINUP tests
  with inst2_mod


======================================================================

SSP
   smoke CLM spinup test (only valid for CLM compsets with CLM45 and CN or BGC)  (TODO - change to SPL)
       do an initial spin test (setting CLM_BLDNML_OTPS to -bgc_spinup_on)
Performance Tests
======================================================================

PFS    system performance test.  Do write restarts at the end of the run
         short term archiving is on
       do a hybrid non-spinup run run from the restart files generated in the first phase

SPO    smoke spinup-ocean test

20 day run, no restarts
ICP    cice performance test

======================================================================
    SPINUP tests
=======================================================================================================
    Archiving Tests
======================================================================

STA    Short-term archiving restart test 
LAR    long term archive test 

SSP    smoke CLM spinup test (only valid for CLM compsets with CN or BGC)  (TODO - change to SPL)
       do an initial spin test (setting CLM_BLDNML_OTPS to -bgc_spinup_on)
         write restarts at the end of the run
         short term archiving is on
       do a hybrid non-spinup run run from the restart files generated in the first phase

======================================================================
    CompilerOther flagcomponent-specific assumptionstests

======================================================================

APTLII    CLM autoinitial condition promotioninterpolation test 

Pre-CIME

Available Tests before CIME integration.
==========================================================================
APT (auto promotion test (default length)) 
CME (compare mct and esmf interfaces (10 days)) 
ERB (branch/exact restart test) 
ERH (hybrid/exact restart test) 
ERI (hybrid/branch/exact restart test, default 3+19/10+9/5+4 days) 
ERS (exact restart from startup, default 6 days + 5 days) 
ERT (exact restart from startup, default 2 month + 1 month (ERS with info dbug = 1)) 
ICP (cice performance test) 
LAR (long term archive test) 
NCK (multi-instance validation vs single instance (default length)) 
NOC (multi-instance validation for single instance ocean (default length)) 
OCP (pop performance test) 
P4A (production branch test b40.1850.track1.1deg.006 year 301) 
PEA (single pe bfb test (default length)) 
PEM (pes counts mpi bfb test (seq tests; default length)) 
PET (openmp bfb test (seq tests; default length)) 
PFS (performance test setup) 
PRS (pes counts hybrid (open-MP/MPI) restart bfb test from startup, default 6 days + 5 days) 
SBN (smoke build-namelist test (just run preview_namelist and check_input_data)) 
SEQ (sequencing bfb test (10 day seq,conc tests)) 
SMS (smoke startup test (default length)) 
SSP (smoke CLM spinup test (only valid for CLM compsets with CLM45 and CN or BGC))

...

The following modifiers can be used in the test name
_CG = gregorian calendar
_D = debug
_E = esmf interfaces
_IOP*= PnetCDF IO test where * is
A(atm), C(cpl), G(glc) , I(ice),
L(clm), O(ocn), W(wav) or blank (all components)
_L* = set run length y, m, d, h, s, n(nsteps) plus integer (ie _Lm6 for 6 months)
_M* = set the mpilib to *, where * is default, mpi-serial, mpich, etc
_N* = set NINST_ env value to *, where * is an integer
_P* = set pecount to *, where * are specific values which include
T,S,M,L,X,1,1x1,16,16x1,4x4, etc
_R* = PTS_MODE test case, valid values are LA, LB, OA, OB