MDS (multidimensional scheduling) section
The MDS (multidimensional scheduling) section of the application profile contains configuration for your resource plan, and allows you to define slot definitions for multidimensional scheduling. This section must contain at least one SlotDefinition element. Additionally, indicate which SlotDefinition is the default to be used for session level multidimensional scheduling support.
<MDS planName="MDSPlan1">
<SlotDefinitions>
<SlotDefinition name="cpu_intensive" default="true">
<Metric name="ncpus">4</Metric>
<Metric name="maxmem">250</Metric>
</SlotDefinition>
<SlotDefinition name="zero_cpu" default="true">
<Metric name="ncpus">0</Metric>
<Metric name="maxmem">250</Metric>
</SlotDefinition>
<SlotDefinition name="memory_intensive">
<Metric name="ncpus">0.5</Metric>
<Metric name="maxmem">4000</Metric>
</SlotDefinition>
<SlotDefinition name="service_limit" default="true">
<Metric name="ncpus" limit="3">2</Metric>
<Metric name="maxmem" limit="0">250</Metric>
</SlotDefinition>
</SlotDefinitions>
</MDS>
Description: Defines the multidimensional resource plan.
Description: Specifies the name of the multidimensional resource plan.
Where used: MDS
Required or optional: Required
Valid values: Any multidimensional resource plan name that you have defined. This can be a string of no more than 64 characters long containing only alphanumeric characters, underscore characters (_), and hyphens (-).
Description: Defines each slot definition within the multidimensional resource plan.
default
<SlotDefinition name="cpu_intensive" default="true">
Where used:
.Required or optional: Required.
Valid values: true or false
name (for slot definition)
Description: Specifies the name of the slot definition within the multidimensional resource plan. In the example MDS section within this topic, there four slot definition names defined: cpu_intensive, zero_cpu, memory_intensive, and service_limit. At least one slotDefinition must be defined.
Where used:
.Required or optional: Required. At least one slotDefinition must be defined.
Valid values: A string of no more than 32 characters long containing only alphanumeric characters, underscore characters (_), and hyphens (-). It cannot begin with a hyphen. For example, cpu_intensive or memory_intensive are valid.
name (for resource metric)
Description: Specifies the name of the resource metric defined in your multidimensional resource plan. IBM® Spectrum Symphony supports four predefined resource metrics: maxmem, maxswp, maxtmp, and ncpus. Additionally, you can use a custom defined metric.
Where used:
Required or optional: Required
Valid values: A string of no more than 255 characters, containing only alphanumeric characters, underscore characters (_). It cannot begin with an integer.
Specify the value of each metric, using integers or decimals up to two decimal places. For example, <Metric name="ncpus">4</Metric>, <Metric name="ncpus">0.5</Metric>, and <Metric name="ncpus">2.25</Metric> are all valid.
zero_cpu
slot
definition allows for no CPU cores: the metric called ncpus
has a value of zero to
indicate this. The other metric (called maxmem
) has a value of 250, which is a
value greater than zero:<MDS planName="MDSPlan1">
<SlotDefinitions>
<SlotDefinition name="zero_cpu" default="true">
<Metric name="ncpus">0</Metric>
<Metric name="maxmem">250</Metric>
</SlotDefinition>
</SlotDefinitions>
</MDS>
limit
parameter to the metric. In the following example, the
service_limit
slot definition sets service resource limits with two
multidimensional resource metrics: ncpus
and maxmem
. Setting
ncpus limit="3"
limits the maximum CPU cores to three, and setting maxmem
limit="0"
indicates no maximum memory (RAM in MB):<MDS planName="MDSPlan1">
<SlotDefinitions>
<SlotDefinition name="service_limit" default="true">
<Metric name="ncpus" limit="3">2</Metric>
<Metric name="maxmem" limit="0">250</Metric>
</SlotDefinition>
</SlotDefinitions>
</MDS>
Note that when this service resource limit is enabled, the new
limit
parameter overrides the metric's value (in this example, the limit of
3
CPU cores overrides the value of 2
). If the
limit
parameter is set to zero (limit="0"
), the limit is not
applied.