.. _model_config_batch:
BATCH_SPEC_FILE
===============
.. contents::
:local:
Entry
-----
The following is an example entry for ``BATCH_SPEC_FILE`` in ``config_files.xml``.
This varaible only requires a single value.
Example
:::::::
.. code-block:: xml
char
$SRCROOT/cime_config/machines/config_batch.xml
case_last
env_case.xml
File containing batch system details for target system (for documentation only - DO NOT EDIT)
$CIMEROOT/CIME/data/config/xml_schemas/config_batch.xsd
Contents
--------
The following describes the contents of the ``config_batch.xml`` file.
The **config_batch.xml** schema is defined in **$CIMEROOT/config/xml_schemas/config_batch.xsd**.
CIME supports these batch systems: pbs, cobalt, lsf, and slurm.
The entries in **config_batch.xml** are hierarchical.
#. General configurations for each system are provided at the top of the file.
#. Specific modifications for a given machine are provided below. In particular, each machine should define its own queues.
#. Following is a machine-specific queue section. This section details the parameters for each queue on the target machine.
#. The last section describes several things:
- Each job that will be submitted to the queue for a CIME workflow,
- The template file that will be used to generate that job,
- The prerequisites that must be met before the job is submitted, and
- The dependencies that must be satisfied before the job is run.
By default, the CIME workflow consists of two jobs (**case.run**, **case.st_archive**).
In addition, there is a **case.test** job that is used by the CIME system test workflow.
Schema Definition
-----------------
.. warning::
Under ``submit_args`` the ``arg`` element is deprecated in favor of ``argument``.
======================= ========================================================================================
Element/Attributes Description
======================= ========================================================================================
batch_system Defines a batch system.
MACH Optional name of a machine this batch system belongs to.
type The type of batch system, used for a machine to define it's batch system.
batch_query Command to query batch system.
args Extra arguments for query command.
per_job_arg Flag to query specific job.
batch_submit Command to submit to batch system.
batch_cancel Command to cancel job.
batch_redirect Redirect used for batch submit output.
batch_env Whether to run command is included in the batch script.
batch_directive Batch directive for submit file.
jobid_pattern Regex pattern to parse job id.
depend_string Dependency string.
depend_allow_string Dependency string if fails are allowed.
depend_separator Separator for dependencies.
walltime_format Format used to parse walltime.
batch_mail_flag Mail flag to pass user.
batch_mail_type_flag Mail type.
batch_mail_default Default type if `batch_mail_type_flag` is not set.
arg Batch submission argument. Deprecated.
flag Name of the argument.
name Value of the argument.
argument Batch submision argument.
job_queue If set the argument is only used when submitted to the queue.
directive Batch directive to add to submission script.
default Default value is directive value cannot be resolved.
prefix Value to prefix directives.
queue Queue defined for this batch system.
default Whether the queue is the default for the system.
strict If true then the walltime must be less than the maximum allowed walltime.
nodemax Maximum number of nodes.
nodemin Minimum number of nodes.
jobmax Maximum number of tasks.
jobmin Minimum number of tasks.
jobname If job matches value then this queue will be used.
walltimemax Maximum walltime.
walltimemin Minimum walltime.
walltimedef Default walltime.
======================= ========================================================================================
.. code-block:: xml