-
Notifications
You must be signed in to change notification settings - Fork 212
config machines
All information about the software available on a machine and how to set up the environment for a CIME-based model is in cime/cime_config/<model>/machines/config_machines.xml
Definition for elements in config_machines.xml.
- <config_machines></config_machines>
- List of machine definitions
- <machine MACH=""></machine>
- Machine definition, MACH specifies the machine name, see section Machine
The following are simple xml elements in the form of <name>value</name> where name is:
- DESC
- Short machine description
- NODENAME_REGEX
- regex for auto-detect that you're on this machine
- TESTS
- preferred test suite to run on this machine, e.g. acme_developer
- OS
- Operating system, accepted values are LINUX,Darwin,CNL,AIX,BGL,BGP
- COMPILERS
- Comma separated list of supported compiler(s) for machine, valid values are intel,ibm,pgi,pathscale,gnu,cray,nag. Default compiler is first in list.
- MPILIBS
- Comma separated list of supported mpi libraries for machine, valid values are openmpi, mpich, ibm, mpi-serial. Default mpi library is first in list
- CESMSCRATCHROOT
- complete path to the 'scratch' directory
- RUNDIR
- complete path to the run directory
- EXEROOT
- complete path to the build directory
- DIN_LOC_ROOT
- complete path to the input data directory
- DIN_LOC_ROOT_CLMFORC
- path to the optional forcing data for CLM (for CRUNCEP forcing)
- DOUT_S
- logical for short term archiving, either FALSE or TRUE
- DOUT_S_ROOT
- complete path to a short term archiving directory
- DOUT_L_MSROOT
- complete path to a long term archiving directory
- CCSM_BASELINE
- where the cesm testing scripts write and read baseline results
- CCSM_CPRNC
- path to the cprnc tool used to compare netcdf history files in testing
- BATCH_SYSTEM
- name of batch system, e.g. slurm
BATCHQUERY
BATCHSUBMIT
BATCHREDIRECT
- SUPPORTED_BY
- machine point of contact
GMAKE_J
- MAX_TASKS_PER_NODE
- how much can be oversubscribed
- PES_PER_NODE
- physical cores
The following are nested xml elements in the form of <name attribute='attribute_value'>value</name> , see sections below for detailed descriptions:
mpirun
- module_system
- definition of module system and list of modules to be loaded depending on compiler and mpi library , see section Module System
- environment_variables
- list of environment variables depending on compiler and mpi library, see section Environment Variable
- executable
- need definition
- arguments
- need definition
Definition of the system used to set the software environment. Depending on compiler and/or MPI library versions different software modules have to be loaded or removed.
- <module_system type=”MODULE_SYSTEM_TYPE”></module_system>
- Known values for MODULE_SYSTEM_TYPE are “module” , “soft”
The module_system element has following subelements:
- <init_path lang=""></init_path>
- Path to initialize the module system, can depend on language used. Important if used within scripts or not initialized by default
- <cmd_path lang=""></cmd_path>
- Path to executable of module system
- <modules compiler="" mpilib=""></modules>
- List of command to be executed for a specified combination of compiler and mpi library
- <command name="" compiler="" mpilib=""></command>
- Value for name is a module system command, compiler and mpilib are optional
Section to define environment variables if required.
- <environment_variables compiler="" mpilib=""></environment_variables>
- List of env to be set for a specified combination of compiler and mpi library. compiler and mpilib are optional.
- <env name=""></env>
- Name and value of environment variable