Rank the Resource Agents

Resource ranking allows a resource to be managed by multiple agents, such is the case with vovmultiqueued and vovresourced. The simple idea is that a ranking is assigned to the agents, and the agent with the highest rank wins. With ranking, you can setup a redundant system of daemons.

By default, vovmultiqueued has rank 20 while vovresourced has rank 3. If a resource is managed by both, then vovmultiqueued wins. However, if the vovmultiqueued daemon stops (for maintenance or because the network link has been broken) then vovresourced will take over after the expiration time of the resource.

Typically, agents with higher ranking will use shorter expiration times.

Control the Rank of vovresourced

The default rank for vovresourced is 3. From the command line, use the option -rank as in:
% vovresourced -rank 4 

or set the variable RESD(rank) in the config.tcl file.

Control the Rank of vovmultiqueued

The default rank for vovmultiqueued is 20. From the command line, use the option -rank as in:
% vovmultiqueued -rank 28 
or call the procedure VovMQSetRank in the config.tcl file.
# Fragment of vovmultiqueued/config.tcl 
VovMQSetRank 28

Ranks Less Than 20 and Out-of-queue Jobs

If an agent has a rank less than 20, then the server will automatically adjust the number of available resources to account for out-of-queue jobs. This also means that for rank 20 or above, the server does not automatically account for out-of-queue jobs.

This is done because in the case of vovmultiqueued, the server does not have enough information to compute the out-of-queue jobs, and such computation is therefore left to vovmultiqueued.

Rank 1000 and More

This rank is used for resources in the dedicated server for Allocator.

Summary of Ranks for Resource Maps

0 Used for automatically generated resources
1-19 Used for vovresourced. Default is 3
20-999 Used for resources managed by Allocator. Default is 30 and typical values are between 20 and 40.
1000 Used for resources in the dedicated server for Allocator.
other values Not used