Resource Requirements Config Group¶
Resource configuration in Resource Requirements config groups provide information about memory and CPU requirements for a workload. These values enable the Altair SLC Hub server to calculate how many concurrent workloads can be run across all available resources.
Defining Resource Requirements config groups can help to prevent workloads from running out of system resources. The information provided is used to estimate system resources required by a worker node to execute a workload. These values are checked at execution time and used to determine the worker node that will run the workload.
Altair SLC Hub will only run a workload on a single worker node. This may affect the number of workloads that can be run compared to the maximum theoretical limit based on total resource available in the Altair SLC Hub cluster.
Each workload is calculated in terms of memory and CPU requirement. The number of concurrent workloads is limited by either CPU requirement or memory requirement — whichever is exhausted first.
For example, an Altair SLC Hub installation is configured with two worker nodes:
- Node1 has 32 GiB of memory and a 16 core CPU running at 2.5 GHz (2500 MHz).
- Node2 has 256 GiB of memory and a 32 core CPU running at 2.5 GHz (2500 MHz).
Processing resource availability is calculated as number of cores multiplied by CPU speed:
- Node1 has 40GHz processing resources (16* 2500 MHz) and 32 GiB memory.
- Node2 has 80GHz processing resources (32* 2500 MHz) and 256 GiB memory.
If all workloads use the default resource requirements values, the maximum number of workloads that can be run concurrently in the cluster is 509, calculated as:
- Node1 can concurrently execute 109 workloads, limited by Memory resource availability:
- CPU: 40000 MHz ÷ 200 MHz = 200 workloads (maximum)
- Memory 32 GiB ÷ 300 MB = 109 workloads (maximum).
- Node2 can concurrently execute 400 workloads, limited by CPU resource availability:
- CPU: 96000 MHz ÷ 200 MHz = 400 workloads (maximum)
- Memory 256 GiB ÷ 300 MB = 873 workloads (maximum).
Note
The specified values for Resource Requirements config groups do not determine upper resource limits for a workload.
A workload can exceed the specified Resource Requirements config group values when executed.
To prevent the workload failing when run, further restrictions can be added by defining Altair SLC system options (for example MEMSIZE
) in an SLC config group as part of the execution profile.
See SLC Config Groups for more information.
Resources available for each worker node in the cluster is displayed in the Properties page for the worker node. You can access this page through the Cluster Nodes section of Hub Administration section of the portal.
Resource Requirements and SLC config groups are defined on the Execution Profiles page in the Hub Administration section of the portal.
Where multiple Resource Requirements config groups have been defined in a profile, the config group applied to the execution profile is the final enabled group in the list of groups. Once the workload has started execution, the total calculated resources available on the worker node are reduced by that amount for the duration of the job.
Resource requirements default values¶
If no Resource Requirements config group has been specified in an execution profile, default values for CPU and memory are applied to a workload. The default values are:
- 200 MHz CPU.
- 300 MB memory.
These values provide a start point that enables a reasonable number of workloads to run simultaneously on a worker node, while allowing enough system resources for a typical workload. If required, values lower than the default can be specified for a resource requirements config group. The minimum values that can be specified for resource requirements are 1 MHz CPU and 10 MB memory. We do not, however, recommend setting values below the default values.