Running a local-AI box 24/7, power and noise

How the Build Tiers estimate daily kWh, what idle draw and persistence mode add, why the power limit is the main lever, and what is known about noise.

A box that runs around the clock spends most of its day doing nothing, and that is where much of its energy goes. Every Build Tier on this site states its daily kWh with the assumptions spelled out, so you can redo the sum for your own hours and your own tariff. This guide explains the method, shows where it is weakest, and covers the two things you can change: the idle draw and the power limit. It ends with what is known about noise, which is not much.

How the Tiers estimate kWh

Each Tier’s Power & noise section runs the same five steps:

  1. Load, delivered by the PSU. For the 3090 Tiers: each card at its 300 W power limit, plus the 250 W system reserve from this site’s PSU estimate. The Starter build uses the whole-machine figure its Basis builder reports instead.
  2. Idle, delivered by the PSU. Igor’s Lab’s measured idle for the card (about 16 W for an RTX 3090, about 12 W for a partner RTX 3060), plus an assumed figure for the rest of the machine: 50 W for the Starter host, 70 W for the AM5 platform, 100 W for the EPYC platform. Those platform figures are assumptions, not measurements.
  3. Divide by PSU efficiency to get the draw at the wall. 80 Plus Gold requires 87 % at 20 % load, Platinum 89 to 92 % between 20 % and 100 % load, on 115 V. The Tiers assume 87 % for the Starter’s Gold unit, 90 % for a Platinum unit, and 93 % and 91 % for the 96 GB build’s two units at their loads.
  4. Apply a duty cycle. Every Tier assumes 4 hours of generation and 20 hours of idle a day. That is a guess for a personal box, and the input that moves the answer most.
  5. Scale it. kWh a day × 30.4 for a month, × 365 for a year, then multiply by your own tariff. This site quotes no prices.

The Tiers’ results:

Tier Load at the wall Idle at the wall kWh a day kWh a month kWh a year
Starter about 280 W about 71 W about 2.5 about 77 about 930
24 GB about 611 W about 96 W about 4.4 about 132 about 1,590
48 GB about 944 W about 111 W about 6.0 about 182 about 2,190
96 GB about 1,570 W about 182 W about 9.9 about 300 about 3,620

Each row is the Tier’s own rounding. The 48 GB idle, for one, is 2 × 16 W + 70 W = 102 W, which the Tier rounds to about 100 W before dividing by 0.9, giving about 111 W. The 96 GB load is the upper bound, with all four cards busy at once; a single llama.cpp stream works the cards in turn and draws less. The Starter load is sahibgasimov’s whole-machine figure with GPU and CPU at maximum, which his page doesn’t say was measured at the wall; the Tier treats it as a wall figure and an upper bound.

To redo it for your hours, keep the load and idle figures and change the split. The 48 GB build at 8 hours of generation and 16 idle is 8 h × 0.944 kW ≈ 7.6 kWh plus 16 h × 0.111 kW ≈ 1.8 kWh, about 9.3 kWh a day instead of 6.0. Held at full load around the clock it would be about 23 kWh. The 48 GB Tier makes the same comparison with jonready’s measured 1.04 kW peak at the wall: held all day, about 25 kWh, about four times its estimate.

Idle draw, and why it is the weakest number

On the Tiers’ own duty cycle, idle is a large share of the day: about 1.4 of the Starter’s 2.5 kWh, 1.9 of the 24 GB build’s 4.4, 2.2 of the 48 GB build’s 6.0, 3.6 of the 96 GB build’s 9.9. It is also the least certain input.

Persistence mode. NVIDIA’s documentation says that with persistence mode on, the driver stays loaded even when no client is using the GPU, which minimises the driver load latency for CUDA programs. Without it, the Linux driver unloads the GPU state each time the last client exits. NVIDIA calls the kernel setting (nvidia-smi -pm 1) legacy and recommends its persistence daemon, nvidia-persistenced; nvidia-smi uses the daemon when it is running. It matters for the power limit too: per the same documentation, the power limit goes back to its default after a driver unload, so the Tiers turn persistence on in the same boot-time service that sets the limit (the headless setup guide covers both). We have no measurement of what persistence mode alone does to idle draw on these cards; the 96 GB build expects a headless box with a model held in VRAM to idle above Igor’s Lab’s desktop figure, and the forum reports above point the same way.

The cheapest saving is not idling at all. If the box serves only you, shutting it down or suspending it when you’re done takes the idle term out of the sum, which on the Starter build is more than half the day’s energy.

The power limit is the main lever

A power limit lowers the load term directly. nvidia-smi -pl 300 sets a card’s limit in watts, within the minimum and maximum nvidia-smi -q reports; it needs root and resets on reboot or driver reload, so the Tiers reapply it at boot as Puget Systems does with a systemd service.

What it costs in speed is measured only for other work. Puget Systems found four RTX 3090s at 280 W reached over 95 % of their maximum performance, and at 250 W about 93 %, training ResNet50 in TensorFlow. That is a training benchmark, not LLM inference, and we have no inference measurement; treat it as a sign that the first 50 to 100 W come off cheaply, not as a number for your model.

What it saves, on the Tiers’ arithmetic:

The saving grows with the hours under load: a box batch-processing for 12 hours saves three times as much. A limit also lowers heat and fan speed, which is the noise lever below, and it is what keeps the multi-GPU Tiers inside their PSU and circuit budgets, which the PSU sizing guide covers. It does not cap millisecond transients.

Noise and heat

We have no noise measurement for any Tier or any Basis build. What the sources do say:

If noise matters, the order of levers is: where the box sits, the power limit, then the case. Parts choice comes last.

Related

Last reviewed