Resource plans for lending and borrowing

For an effective resource plan, consider the following factors as presented from a consumer's perspective.

Table 1. Factors in creating an effective resource plan
Questions for leaf consumers Summary of options for leaf consumers based on current configuration
No Yes
Do you own resources? You can still borrow resources. Be sure to enable borrowing. Be sure other consumers agree to lend to you. A leaf consumer is allocated resources directly from its parent.
As an owner of resources, have you enabled lending? Your resources can only be used by you. Unused resources are wasted and never lent out. You can reclaim borrowed resources later. You can also set a lending limit so that only some unused resources get lent, and others remain available to you at all times.

You can choose to lend to any consumer that wants to borrow or you can specify which consumers you want to lend to.

Do you want to restrict lending to leaf consumers from the same branch only? When you set your lending preferences, do not restrict them to leaf consumers from the same branch (siblings). When you set your lending preferences, list only those leaf consumers from the same branch as preferred consumers that you lend to.
Does your branch have surplus, unowned resources? Your parent has distributed all of its resources between you and the other leaf consumers in your branch. Surplus resources can be borrowed by you and other leaf consumers when required. Parent consumers are not able to reclaim surplus resources, but they are returned when the demand by borrowers subsides. Parents may choose to create an “imaginary” child to assign surplus resources to allow for more flexibility (to allow for reclaim and other resource planning).
Does your parent consumer have a shortage of resources? All leaf consumers are allocated resources to match the resource plan. If demand increases, you can borrow more resources from other consumers who have unused resources available for lending. Parents who do not have enough resources available to meet the demands of their children allocate what they do have to their highest priority child. Once its demands are met, the next highest priority child receives the remainder of the parent’s resources, and so on.
Do you have an unsatisfied demand? If you have unused resources with lending enabled, they can be borrowed by other consumers experiencing demand. If you are using all of your owned resources and you still require more, you can borrow surplus resources from other leaf consumers or from the branch-level.

Once you have exhausted borrowing and sharing options, you can reclaim those resources that you have lent to other consumers*. If there is a reclaim grace period set by the borrower of your resources, you may have to wait until the grace period expires or until the borrowing consumer finishes running workload units before getting it back.

Tip: *This default behavior can be changed so that owned resources are reclaimed before a consumer attempts to borrow resources from other lending consumers.
Are there several consumers with a simultaneous demand? Demand is low, with no competition for resources. Consumers are using their owned resources, or borrowing unused resources without dispute. If you and a sibling both have an unmet demand for resources, than the share ratios for each of you are considered before your parent allocates surplus resources; if you have a higher share ratio, you receive more of the surplus resources. You may have a maximum limit set for the number of resources you can receive, despite your share ratio.

If there is competition between siblings for resources belonging to another consumer branch, the leaf consumer with the highest consumer rank has its demand satisfied first. In cases where the consumer rank is the same, borrowing preference are considered. For example, if the lender is configured to show a higher borrowing preference towards you, then you have your resource demands satisfied first.

Are you borrowing resources? Demand may be low. Ensure you enable borrowing in case you have an unsatisfied demand in future. Borrowing is on a first-come first-served basis. If there are competing borrowers for a consumer’s resources, and you are the first one to request them, you get as many as required to meet your demand. Any remaining resources go to the borrowers in line behind. If there are no remaining resources, competing borrowers must wait for you to release your borrowed resources (once your demand subsides).

As a borrower, there is the possibility that any running workload units may be interrupted if the lender of your resources reclaims them. You have the option of setting a reclaim grace period to avoid interrupting any workload units running on a borrowed resource. Resources meeting the demand requirements of the lender are reclaimed according to consumer rank, from lowest to highest.

As a borrower, have you set a grace period to extend how long you can use borrowed resources before they are reclaimed? If you are a borrower, your borrowed resource gets reclaimed as soon as the lender has demand. Any client work running on the resource is interrupted. If you are a borrower and the lender wants their resource back to meet their own demand, any running workload units continue to run uninterrupted until the reclaim grace period expires, or until the client releases the resource (whichever comes first).
As a borrower, do you have a borrowing limit? You can borrow as many owned resources available for sharing as you need to meet your resource demands. The number of total resources you can use (including owned, borrowed, and shared resources) has a set limit. If your demand is great, you may not be allowed to satisfy it completely.
Are your client’s workload units running as expected? Are your resource demands consistently being met?
  • Ensure that the entire consumer branch in the consumer tree is adequately resourced.
  • Check that priority levels are not all set the same (all low, or all high).
  • Confirm that the share ratio between sibling leaf consumers is appropriate.
  • Make sure borrowing and lending are enabled.
The resource plan is effective.