Skip to content

config machines

Andreas Wilke edited this page Jun 24, 2016 · 12 revisions

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

Data structure and field definitions

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

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

MPI Run

executable
need definition
arguments
need definition

Module System

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

Environment Variable

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
Clone this wiki locally