Configure Host-level Custom Resources
Configure a dynamic host-level custom resource such as scratch space.
Dynamic Host-level Resources
Use a dynamic host-level resource to query the MoMs to get the availability of a resource and use that value for scheduling.
For dynamic host-level custom resources, the scheduler sends a resource query to each MoM to get the current availability for the resource, and uses that value for scheduling. If the MoM returns a value, this value replaces the resources_available value reported by the server. If the MoM returns no value, the value from the server is kept. If neither specifies a value, the scheduler sets the resource value to 0.
The available amount of the resource is determined by running a script or program which returns the amount via stdout. This script or program is specified by the Mom Resources parameter.
The script is run once per scheduling cycle. For a multi-vnode machine, the script is run for the natural vnode. The resource is shared among the MoM’s vnodes.
The scheduler tracks how much of each numeric dynamic server-level custom resource has been assigned to jobs, and will not overcommit these resources.
The format of a dynamic host-level resource query is RESOURCE_NAME !PATH_TO_COMMAND where RESOURCE_NAME is the name of the resource and PATH_TO_COMMAND is typically the full path to the script or program that performs the query in order to determine the status and/or availability of the new resource you have added.
An example of a dynamic host-level resource is scratch space on the execution host.
Host dynamic resource values are never visible in qstat, and have no resources_available.RESOURCE_NAME representation anywhere in PBS.
Configure Dynamic Host-level Custom Resources
Configure a dynamic host-level resource to query the MoMs to get the availability of a resource and use that value for scheduling.