Computing Time Accounting
In the HPC world, consumption of computing resources is measured in core hours (core-h). As the name suggests, one core-h typically represents the usage of one CPU core for one hour.
This page gives an overview of how computing time can be managed.
Table of Contents
- Checking the Computing Time Quota
- Sliding Window Quota
- Checking Computing Project Status and Consumption
- Exceeding Computing Time Quotas
- How to check the Billing of a Job
- See also
Checking the Computing Time Quota
To review the consumed computing time of the last six months use:
r_wlm_usage
Replace <project-id>
with your actual computing project ID.
Using the following command allows you to review the usage of a given project by all users involved:
r_wlm_usage -p <project-id>
To view additional parameters and report settings use
r_wlm_usage -h
Computing time quotas are allocated on a monthly basis. However, we understand that computational needs may vary each month. To provide flexibility, we have implemented a sliding three-month quota system. This means you can use up to three times your monthly quota over any consecutive three-month period.
For example, if your monthly quota is 2000 core-hours, you can use up to 6000 core-hours over any three-month window. This allows you to exceed your monthly quota in a given month as long as your total usage over the three months stays within 6000 core-hours.
The following table provides some examples with 2000 core-h as monthly quota:
Month | Usage Example 1 | Usage Example 2 |
---|---|---|
First | 2500 | 3000 |
Second | 1500 | 3000 |
Third | 2000 | 3000 |
3-Month Total | 6000 (within quota) | 9000 (exceeding quota) |
Checking Computing Project Status and Consumption
To get a detailed overview of your computing project details and consumption, use the following command:
r_wlm_usage -q -p <project-id>
While most parameters are self-explanatory, some may require additional context:
- "Remaining core-h of prev. month"
- Shows the difference between the previous month's usage and the monthly quota.
- A negative value indicates that you used more computing time in the last month than the monthly quota.
- "Consumable core-h (%)"
- Displays the percentage of available core-hours based on the last and current month's usage.
- If the combined consumption of the last month and this month exceeds twice the monthly quota, this value becomes negative.
- When exceeding the sliding window quota, this parameter will show "-101%".
- "Consumable core-h"
- Indicates the absolute number of available core-hours based on the last and current month's usage.
- If you have used more than twice your monthly quota, this will display zero.
- "Allowed partitions"
- Lists the partitions you are permitted to submit jobs to within your computing project.
- "Max. allowed wallclocktime"
- The maximum duration a job can run under this computing project.
- "Max. allowed cores per job"
- Specifies the maximum number of cores that a single job can request within this computing project.
The following example shows the output of the command:
> r_wlm_usage -q -p example1234 Account: example1234 Type: example Start of Accounting Period: 08.05.2024 End of Accounting Period: 07.05.2025 State of project: active -------------------------------------------------- Quota monthly (core-h): 10000 Remaining core-h of prev. month: -100 Consumed core-h current month: 1000 Consumed core-h last 4 weeks: 8000 Consumable core-h (%): 89 Consumable core-h: 8900 -------------------------------------------------- Total quota (core-h): 120000 Total consumed core-h so far: 60000 -------------------------------------------------- Default partition: c23ms Allowed partitions: c23ml,c23ms,c23mm Max. allowed wallclocktime: 24.0 hours Max. allowed cores per job: 96
Exceeding Computing Time Quotas
Exceeding your sliding window quota leads to notable changes in job processing. In such cases, further job submissions will be put on a low-priority Slurm partition, resulting in significantly longer wait times for job starts. Note that will r_wlm_usage -q
will display -101% in this situation (see fourth month in example above).
In addition, please mind the following restrictions:
- If a project's consumption exceeds six times its monthly core-h quota within a four-week period, new job submissions will be temporarily suspended until the usage drops below this threshold.
- Using more than double the total project core-h quota will permanently disable further job submissions for the project's period.
These restrictions apply similarly to personal compute time quotas.
Please be aware that in times of high demand, we may adjust these limits to ensure fair distribution of resources.
How to check the Billing of a Job
As stated above, one core-h typically represents the use of one CPU core for one hour. If this is not the case in your jobs then you are probably doing something wrong. After a job has started, you can check the billing using sacct:
sacct -X -j <job-id> -o AllocTRES%100
If the billing is higher than the number of CPU cores, you are paying for more than the requested cores. This can have two reasons:
- You requested more memory than is available per core for the selected partition. If this is the case, consider switching to a partition with more memory per core.
- When requesting GPUs, you are automatically billed for a certain number of cores, even if you did not request as many. If you need additional computing power, consider increasing the number of cores to the billing value.