Budget Manager Terminology

Budget Manager terms and their description.

Account
An entity against which allocations are defined, credited, and debited.
Defined by the Budget Manager administrator and can be specific to the needs of the client.
Allocations (currency) are deposited into the Account by a Stakeholder for a specified time period. Currency is withdrawn from the Account when users, who are assigned to the Account, run jobs that use the currency (usually currency is tied to a resource such as CPU hours, GPU hours, etc).
There are 2 types of Accounts:
Project
An entity that represents a department, a business unit, or any site specific organization.. The currency deposited into the account can be used by any users assigned to the Account.
User
An entity that represents an individual. The currency deposited into the account can only be used by the individual assigned to the Account.
Allocation
A consumable resource available for projects and users. It is linked to projects for a fixed time period. As the resources are consumed, the allocation is depleted. Allocations can be made for compute resources and budget resources or a combination of both.
Budget Resource
Budget resource is currency mapped to a compute resource. e.g. 1 CPU-hour = $10 1 GPU-hour = $25. For Budget Resource, users specify the currency budget and consume any of the mapped PBS resources.
Compute Resource
Compute resource is defined as an arithmetic computation of a PBS resource and time. For example, the PBS resource NCPUS and walltime together provide the compute resource of CPU-hours. Other examples are GPU-hours, memory-hours, etc.
Cluster
Projects are associated with an HPC cluster and funding for those projects is administered by Budget Manager.
Instance
Represents an installation of Budget Manager and is described by a name and the hostname or IP address of the machine where Budget Manager is installed.
Period
Period is a time duration for which an allocation is made and reported against.
Defined by the Budget Manager administrator and can be specific to the needs of the client.
Ex. a year, a quarter within a year, a month within a year.
Queue Weight
Some queues run at different priorities than others. The compute resource or budget resources can be depleted at different rates at different queues.
Reconcile or Reconciliation

Occurs when a job finishes. Any Service Units (currency) allocated to a job that were not consumed are returned to the Account from which they were withdrawn.

Refund

An Budget Manager administrator can choose to refund Service Units to an Account when a job fails or a job runs multiple times for reasons that cannot be attributed to the user such as a node failure or when running times are increased due to a hardware issue.

Role
Roles that define the access to the features of Budget Manager.
Admin
Responsible for configuring Budget Manager and can also perform refunds.
Stakeholder
A role associated with an account that can add or withdraw currency from the account.
Teller
An administrative role for performing all acquire and reconcile transactions on behalf of users. The Teller manages all transactions internally through the Budget Manager hook. The Teller has all permissions on the transaction model and read access to all other models.
User
PBS users who are authorized to run jobs for a project and consume allocations. Individual users who are accounting entities and authorized to run jobs.
Service Unit
A service unit is a single unit of a compute resource or a budget resource or combinations of both.
Defined by the Budget Manager administrator and can be specific to the needs of the client.
Ex. CPU hours, GPU hours, dollars
Transaction
Transactions that are currently tracked:
Grant
Transaction that occurs when a Stakeholder adds currency to an Account.
Withdraw
Transaction that occurs when a Stakeholder withdraws currency from an Account.
Acquired
Transaction that occurs when a job is submitted. Currency is allocated to the job based on the Service Units associated with the Account. Service Units are tied to the currency formula defined in the Budget Manager hook.
Released
Transaction that occurs when a job completes. Any currency that was not consumed by the job is released back to the Account from which it was withdrawn.