See what your HPC compute really cost -- in dollars, energy, and burgers.
Project description
slurm-receipt
See what your HPC compute really cost — in dollars, energy, and burgers.
A zero-dependency terminal tool that reads your Slurm job history via sacct
and generates an interactive receipt showing compute charges, energy usage,
AWS cost equivalents, and fun real-world conversions. It also roasts you
about your failed jobs with data-backed commentary.
====================================================
_[==]_
|o o|
|______|
The General Store
====================================================
Customer: you
Period: 2026-03-25 -> 2026-04-07 20:24
Days: 14
----------------------------------------------------
ORDER SUMMARY
----------------------------------------------------
Jobs submitted .......................... 26,189
Completed ............................ 26,085
Failed ....................................57
Cancelled .................................21
Timed out ..................................3
Success: [##########################..] 100%
Install
# From PyPI (recommended)
pip install slurm-receipt
# Or with pipx (isolated install)
pipx install slurm-receipt
# Or from source
git clone https://github.com/chen-hsieh/slurm-receipt.git
cd slurm-receipt
pip install -e .
Requirements: Python 3.8+, access to sacct (any Slurm cluster), a
terminal with curses support. Zero external Python dependencies.
Quick start
# Interactive receipt for the last 30 days
slurm-receipt
# Last 90 days
slurm-receipt --days 90
# Custom date range
slurm-receipt --start 2025-01-01 --end 2025-12-31
# Plain text output (no TUI)
slurm-receipt --snap
# Save to a specific file
slurm-receipt --snap-file my_receipt.txt
# Try it without a Slurm cluster (synthetic data)
slurm-receipt --demo
# Add UGA Bulldogs flavor to roasts
slurm-receipt --uga
Examples
Main receipt
The receipt shows your compute charges like a store receipt:
----------------------------------------------------
COMPUTE CHARGES
----------------------------------------------------
CPU time ........................ 18,597 core-hrs
Wall time ......................... 1,008 hrs
Memory ........................ 176,483 GB-hrs
Energy (CPU) ..................... 148.78 kWh
Cooling overhead ......................... x1.3
------------------------------------------------
TOTAL ENERGY ..................... 193.41 kWh
CO2 emitted ...................... 77.37 kg
----------------------------------------------------
AWS PRICE CHECK (on-demand)
----------------------------------------------------
Compute (CPU) ........................ $929.87
Memory ............................... $882.41
------------------------------------------------
TOTAL ............................ $1,812.28
****************************************************
BUT ACTUALLY...
****************************************************
~B~ 276.3
burgers grilled
"Enough to run a food truck for a day"
[1/37] (food)
Activity report
Press h to see your submission patterns — weekly volume, day-of-week,
and time-of-day breakdowns:
WEEKLY BREAKDOWN
------------------------------------------------
Mar 25-31 [####################] 25971 <-
Apr 01-07 [#.....................] 218
DAY OF WEEK
------------------------------------------------
Monday [#####.............] 43
Tuesday [##################] 63 <-
Wednesday [##############....] 55
Thursday [#.................] 4
Friday [###########.......] 40
Saturday [############......] 25946 <-
Sunday [###...............] 25
TIME OF DAY
------------------------------------------------
12am-4am [....................] 0
4am-8am [....................] 0
8am-12pm [####................] 2593
12pm-4pm [####################] 10382
4pm-8pm [################....] 7786
8pm-12am [###########.........] 5428
Performance review (roasts)
Press r to see data-driven roasts with a mini receipt showing the
referenced job info:
25,963 jobs on 2026-03-28.
That's one every 3s.
Were you okay?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| RELATED JOB INFO |
|----------------------------------------------|
| Detail: 25,963 jobs on 2026-03-28 |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[1/6]
Top jobs
Press t to see your hungriest jobs by CPU-hours, plus the failure
hall of shame:
TOP 10 HUNGRIEST JOBS
====================================================
# Job Name CPU-hrs
------------------------------------------------
1. genera_717hap1 9,216
2. genera_717hap2 8,832
3. build_diamond_nr 768
4. syn_ks 36
...
Interactive controls
| Key | Action |
|---|---|
< / > |
Rotate through 37 fun conversions |
r |
Performance review (roasts) |
m |
Monthly ledger |
h |
Activity report (weekly/daily/hourly) |
t |
Top jobs + failure hall of shame |
s |
Save receipt to ~/slurm_receipt_30d.txt + copy to clipboard |
j/k or arrows |
Scroll |
PgUp/PgDn |
Scroll fast |
b |
Back to main receipt |
q |
Quit (prints save location) |
Mouse scroll and status bar clicks also work in supported terminals.
What it calculates
| Metric | Method | Source |
|---|---|---|
| CPU energy | core-hours x 8W per core / 1000 | Blended avg across HPC nodes |
| GPU energy | GPU-hours x GPU TDP / 1000 | A100=400W, H100=700W, L4=72W, etc. |
| Cooling overhead | Total energy x 1.3 PUE | Industry standard data center PUE |
| CO2 emissions | kWh x 0.4 kg/kWh | US Southeast electricity grid |
| AWS cost | On-demand list prices, US regions | 2026 pricing |
Fun conversions (37)
Rotate through with </>:
- Food: burgers, cakes, ramen, espresso, toast, pizza, popcorn, rice
- Energy: phone charges, laptop charges, AA batteries, lightning bolts
- Transport: Tesla miles, e-bike miles, transatlantic flights
- Household: laundry loads, showers, houses powered, fridge days
- Entertainment: Netflix hours, gaming hours, vinyl albums
- Scale: ISS orbits, Bitcoin transactions, ChatGPT queries, MRI scans
- Memory: novels in RAM, photos, human genomes, full Wikipedias
- Environment: trees to offset, CO2 balloons, soda cans
Roast categories
All roasts reference your actual data with a mini receipt panel:
- Failure rate analysis (any % triggers something)
- Instant failures (<10s) with job name
- Slow painful failures (hours then FAILED) with job name
- Array job burst detection
- Night owl patterns (10pm–6am submissions)
- Weekend warrior detection
- Peak submission hour commentary
- Short job inefficiency (<60s completed)
- Single-core job usage
- Memory usage patterns
- Partition loyalty/diversity
- Cancellation habits
- Top CPU hog identification
- Day-of-week patterns (Monday panic, Friday submit-and-pray)
Mascot tiers
Your shop mascot changes based on total CPU-hours:
| CPU-hours | Examples |
|---|---|
| < 100 | The Lemonade Stand, The Penny Jar |
| 100 – 1K | The Corner Bodega, The Ramen Cart |
| 1K – 10K | The General Store, The Diner |
| 10K – 50K | The Warehouse, The Department Store |
| 50K – 200K | The Mega Depot, The Data Cathedral |
| > 200K | The Compute Empire, The Supercomputer |
CLI reference
usage: slurm-receipt [-h] [--days DAYS] [--user USER] [--start START]
[--end END] [--snap] [--snap-file PATH]
[--no-copy] [--uga] [--demo]
See what your HPC compute really cost.
options:
--days DAYS Days to look back (default: 30)
--user USER Slurm username (default: $USER)
--start START Start date YYYY-MM-DD (overrides --days)
--end END End date YYYY-MM-DD (default: today)
--snap Print receipt + save to ~/slurm_receipt_Nd.txt (no TUI)
--snap-file PATH Save receipt to file
--no-copy Don't auto-copy to clipboard on snap
--uga Add UGA Bulldogs flavor to roasts
--demo Demo with synthetic data (no sacct needed)
Clipboard
The s key saves the receipt and tries to copy to clipboard:
- OSC 52 — works over SSH if your terminal supports it (writes to
/dev/tty) - tmux buffer —
tmux load-buffer(paste withprefix + ]) - xclip / xsel / wl-copy — local clipboard fallback
On quit, the auto-saved receipt location is printed:
Receipt saved to: /home/you/slurm_receipt_30d.txt
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file slurm_receipt-0.1.0.tar.gz.
File metadata
- Download URL: slurm_receipt-0.1.0.tar.gz
- Upload date:
- Size: 29.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4aac4ae4af92325d5210d2dfa4be1ba5d9b6d10d7ee8dfdf2044f51e8f57eb2c
|
|
| MD5 |
572dce96b155b47a1c75b62d615764ba
|
|
| BLAKE2b-256 |
73eb4eee236f3646d7fc88ee89283fe7374a55232498138b3ee9ebb1f0032c8c
|
Provenance
The following attestation bundles were made for slurm_receipt-0.1.0.tar.gz:
Publisher:
workflow.yml on ChenHsieh/slurm-receipt
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
slurm_receipt-0.1.0.tar.gz -
Subject digest:
4aac4ae4af92325d5210d2dfa4be1ba5d9b6d10d7ee8dfdf2044f51e8f57eb2c - Sigstore transparency entry: 1251629677
- Sigstore integration time:
-
Permalink:
ChenHsieh/slurm-receipt@12d88064433f8358eab6f457f61bab9400c39fe3 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/ChenHsieh
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
workflow.yml@12d88064433f8358eab6f457f61bab9400c39fe3 -
Trigger Event:
release
-
Statement type:
File details
Details for the file slurm_receipt-0.1.0-py3-none-any.whl.
File metadata
- Download URL: slurm_receipt-0.1.0-py3-none-any.whl
- Upload date:
- Size: 31.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ee61fbe6161a651d21eaffc424c87f45bac31d68e32242a66199e47e94b2ae28
|
|
| MD5 |
1fba62fb7c308822500d070e09757493
|
|
| BLAKE2b-256 |
e68b6e8f1eeda9483d79e2cfc81f9be17b64a49b238f0026be17e88b025b732c
|
Provenance
The following attestation bundles were made for slurm_receipt-0.1.0-py3-none-any.whl:
Publisher:
workflow.yml on ChenHsieh/slurm-receipt
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
slurm_receipt-0.1.0-py3-none-any.whl -
Subject digest:
ee61fbe6161a651d21eaffc424c87f45bac31d68e32242a66199e47e94b2ae28 - Sigstore transparency entry: 1251629723
- Sigstore integration time:
-
Permalink:
ChenHsieh/slurm-receipt@12d88064433f8358eab6f457f61bab9400c39fe3 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/ChenHsieh
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
workflow.yml@12d88064433f8358eab6f457f61bab9400c39fe3 -
Trigger Event:
release
-
Statement type: