Added some new controls for SETTE.
SETTE currently carries out several types of tests: restartability, reproducibility, code
corruption (agrif-related) and, in the case of LOCK_EXCHANGE and OVERFLOW, a series of
runs with different physical options. For quick checking, such as is now the default with
a *DEBUG* arch file, a subset of these tests may be appropriate. This commit provides
that possibility by introducing a new command line option to sette.sh. Without arguments
SETTE will carry out all tests labelled as: "RESTART REPRO CORRUPT PHYOPTS". The
explicit equivalent would be:
./sette.sh -x "RESTART REPRO CORRUPT PHYOPTS"
any subset of these is allowed but RESTART is mandatory (since this compiles the code)
and will be prepended if omitted. For example:
./sette.sh
Configurations ORCA2_ICE_PISCES ORCA2_OFF_PISCES AMM12 AGRIF WED025 GYRE_PISCES SAS
ORCA2_ICE_OBS ICE_AGRIF OVERFLOW LOCK_EXCHANGE VORTEX ISOMIP+ will be tested if they
are available
Carrying out the following tests: RESTART REPRO CORRUPT PHYOPTS
Or to test restartability only on one configuration:
./sette.sh -t GYRE_PISCES -x RESTART
Configuration GYRE_PISCES will be tested if it is available
Carrying out the following tests: RESTART
Or trying to test reproducibility on its own will also invoke RESTART:
./sette.sh -t GYRE_PISCES -x REPRO
Configuration GYRE_PISCES will be tested if it is available
Carrying out the following tests: RESTART REPRO
Some subtle changes to the bash scripts have been necessary to achieve
this. Notably, param.cfg is only evaluated by sette.sh and consequently the
sette_reference-configurations.sh and sette_test-cases.sh scripts must now be run within
the same shell as sette.sh. This has been tested but there remains a possibility that
different flavours of bash may behave differently. I will hold off from updating the
svn_external reference for SETTE until this has been confirmed to work elsewhere.
One other change is the addition of an internal setting for USING_EXTRA_HALO which
mimics the USING_ICEBERGS setting within sette_reference-configurations.sh and can be
used to toggle testing with the extra halo.
This commit also introduces a debug arch file for the NOC MOBILIS system. This is an
intel-based system but has a rather dated ifort compiler (17.0.4). The -init=huge
keyword was not introduced until ifort v18. In all other arguments this arch file
matches the set recommened by Seb.
|