The useful part, up front

What you’ll take away

  • Power, energy and energy per work unit answer different questions.
  • State whether the boundary covers a component, complete IT equipment or a facility allocation.
  • Keep gross energy and any baseline-subtracted difference separately labelled.
  • Completed requests, accepted results and output tokens are different denominators.
  • Apply compatible facility adjustments once and distinguish operational emissions from an unknown embodied footprint.
01

An energy number needs more than a model name

You see two claims about an AI service: one gives watts, another gives joules per request. They may both describe something useful, but they do not answer the same question. Watts describe how quickly energy is being used. Joules describe an amount of energy. Dividing that amount by a count of requests adds a third choice: what work was counted.

We will follow an invented thirty-second run through those choices. Its complete IT equipment boundary uses 4,000 joules while completing four requests. Acceptance here means that all three requested fields are present; three results are assigned that outcome. The run is stipulated to produce 200 output tokens. These are teaching inputs, not inspected outputs or measurements from a model or a service. We have not run an AI workload, installed an energy tracker or measured a computer for this article.

The goal is to make an energy claim readable. A useful account explains the equipment boundary, time interval, counting unit and any estimates added afterwards. The Software Carbon Intensity specification organizes its own calculation around a defined system boundary and functional unit. [1] We will use those distinctions without presenting our small electricity example as a complete software carbon assessment.

Integrate the complete stipulated intervals. Original piecewise-constant trace. The rows describe full ten-second intervals, not isolated samples from measured hardware.
Original piecewise-constant trace. The rows describe full ten-second intervals, not isolated samples from measured hardware. · Ameer Journal — original explanatory diagramOriginal editorial illustration; no third-party artwork reused.
02

A GPU reading and a whole-system reading cover different equipment

Start by drawing the boundary around the equipment being counted. A reading from a graphics board is not automatically the energy used by the entire computer. The processor, memory, storage, fans and power supply may sit partly or wholly outside that reading. Adding a cooling estimate later also does not repair an unexplained gap in the original equipment count.

CodeCarbon's accuracy documentation describes its CPU, GPU and RAM measurements or estimates and identifies components that it does not separately cover. It also distinguishes those figures from a whole-machine wall reading. [3] As a separate historical example, MLCommons' published Inference v2.0 power rules define system-level measurement at the wall and include components affected by the workload. [5] That document illustrates a boundary choice; this article is not a current benchmark submission guide or an MLPerf result.

For our arithmetic, the 4,000 joules are stipulated to cover the complete IT equipment boundary for the run, before facility overhead. They are not a GPU counter value relabelled as a complete computer. If a real report only has a board measurement, retain that narrower label. A smaller measured boundary can produce a smaller number even when nothing became more efficient.

03

Add energy across intervals instead of choosing one power reading

Imagine that power stays at 100 watts for the first ten seconds, 180 watts for the next ten and 120 watts for the final ten. These are complete constant-power intervals in our invented trace, not three isolated readings whose behavior in between is unknown. Multiplying each power by its ten-second duration gives 1,000, 1,800 and 1,200 joules.

The total is 4,000 joules. Across thirty seconds, that corresponds to an average power of about 133.3 watts. The same energy is 4,000 divided by 3,600, or about 1.111 watt-hours. In kilowatt-hours it is exactly 1/900, approximately 0.001111. Writing the unit at every stage helps prevent a thousandfold mistake when moving between watts and kilowatts.

Now compare two shortcuts. Extending only the middle 180-watt reading across the whole run gives 5,400 joules. Extending only the last 120-watt reading gives 3,600 joules. Both differ from the defined trace because they replace its changing power with a different assumption. This does not tell us the error of a particular commercial meter. It shows why an energy claim needs to explain how power readings represent the full time interval.

04

An accumulated counter and a sampled estimate are different evidence

An energy counter that accumulates between reads can preserve activity that happened between those reads. A few snapshots of power or processor load tell a different story: they need a rule for estimating what happened during the gaps. CodeCarbon's accuracy discussion explicitly separates its energy-counter paths from sampled estimation paths, especially for short or uneven work. [3]

That distinction changes how to read a number with many decimal places. It might come from a device counter, a model based on processor activity, or a configured constant. The methodology and output documentation describe these different origins. [2][4] Extra digits in the displayed result do not turn an estimated input into a direct measurement, and agreement with another program reading the same counter is not an independent wall-meter check.

For a real report, keep the measurement method beside the result: which component was observed, whether the value accumulated energy or sampled power, how long the run lasted, and what was estimated. If one backend is unavailable and the software uses another, record that change. Our invented trace avoids those instrument questions by declaring every interval, but it cannot tell you how accurately any device or fallback would capture a real workload.

Gross energy and a baseline difference are separate. Original arithmetic with a chosen constant 80 W baseline over the identical thirty seconds and IT boundary. The difference is not measured avoided energy.
Original arithmetic with a chosen constant 80 W baseline over the identical thirty seconds and IT boundary. The difference is not measured avoided energy. · Ameer Journal — original explanatory diagramOriginal editorial illustration; no third-party artwork reused.
05

Subtracting an idle estimate creates a second result

Suppose we also choose an 80-watt baseline for the same thirty seconds and the same IT equipment boundary. That baseline corresponds to 2,400 joules. Subtracting it from the run's 4,000 joules leaves 1,600 joules, or about 0.444 watt-hours. Both numbers can be useful when their labels stay attached.

The 4,000-joule figure describes all energy inside our stated run boundary. The 1,600-joule figure describes the difference from the chosen baseline. It does not prove that cancelling one request would save that amount, or that a real computer would otherwise have spent the interval at exactly 80 watts. Those are different questions about what would happen without the workload, and our assumed baseline does not answer them.

The SCI specification includes energy associated with reserved or provisioned hardware and identifies idle infrastructure within its boundary considerations. [1] Consequently, we should not quietly replace total energy with our baseline-subtracted figure and call the result a complete SCI calculation. Publish both when the comparison needs them, state how the baseline was obtained, and compare like definitions. A report that changes its subtraction rule can appear to improve without changing the actual run.

06

Four completed requests and three accepted results give different averages

Keep the same 4,000-joule total and divide it by four completed requests. The average is 1,000 joules per completed request. If the reporting question instead concerns the three results meeting our invented acceptance rule, the average is 4,000 divided by three, or about 1,333.3 joules per accepted result. No electricity changed between those calculations; the denominator changed.

Our stipulated 200 output tokens produce another figure: 20 joules per output token. That number is not interchangeable with either request average. State whether a token count covers generated output, supplied input or both, and which counting convention was used. Likewise, define whether requests include unsuccessful attempts, retries or work that started but did not finish. Otherwise, two identically labelled averages can count different work.

Using the chosen baseline difference instead gives 1,600 divided by four, or 400 joules per completed request above that baseline. The extra words in the label are essential. None of these averages proves that every individual request used the same energy. We know the aggregate interval and the stipulated counts, not each request's separate contribution. A quality-related denominator also needs an explicit acceptance rule, not merely the word “successful”.

The same numerator has different work denominators. Original stipulated counts, not model evaluation or actual tokenization. Each rate uses the same 4,000 J gross IT energy.
Original stipulated counts, not model evaluation or actual tokenization. Each rate uses the same 4,000 J gross IT energy. · Ameer Journal — original explanatory diagramOriginal editorial illustration; no third-party artwork reused.
07

Lower average power can still use more energy for the same work

Consider a second invented run that uses a constant 100 watts but lasts fifty seconds. Assume it completes the same four requests with the same three accepted outcomes. Its energy is 100 multiplied by fifty: 5,000 joules. That is 25 percent more than the first run, even though its average power is lower than the first run's roughly 133.3 watts.

Its average energy per completed request is 1,250 joules, compared with 1,000 in the first run. This example does not show that a particular power limit, processor or model is inefficient. We have changed the stipulated power and duration, not tested an optimization. The lesson is that a lower watt figure alone cannot establish lower energy for a completed workload.

To compare real alternatives, preserve the task and its acceptance criteria while recording the actual duration and energy boundary. Differences in input length, generated output, retries, batching or included startup work can change what was accomplished. The historical MLCommons rules also require power and performance figures from the same benchmark run, rather than combining favorable values from separate runs. [5] That is a useful reporting distinction even when your work is not a benchmark submission.

08

Apply a facility multiplier once, to the boundary it describes

A data center also uses energy beyond its IT equipment. To illustrate the accounting, choose a power usage effectiveness value of 1.2 for our defined interval. Applied to the stipulated 4,000 joules of complete IT energy, it gives 4,800 joules of facility energy: 4,000 for IT and 800 for the associated overhead. This is an invented allocation, not a measured data-center value.

If someone then multiplies the already adjusted 4,800 joules by 1.2 again, the result becomes 5,760 joules. The second multiplication adds 960 joules that do not belong in our stated calculation. It overstates the correctly adjusted total by 20 percent. The arithmetic is straightforward; the practical difficulty is knowing whether an exported number already includes the multiplier.

CodeCarbon's inspected documentation says its energy columns already include a configured PUE. Its output page separately notes a change to reported power columns from version 3.3.1. [2][4] Check the version and column meaning before applying another adjustment. Also keep the original boundary in view: multiplying a partial GPU reading by a facility factor does not, by itself, provide the missing energy of the rest of the IT equipment.

09

Electricity use and electricity-related emissions are separate calculations

Convert the adjusted 4,800 joules to kilowatt-hours: it is exactly 1/750 kWh. Now choose an illustrative electricity intensity of 300 grams of carbon-dioxide equivalent per kilowatt-hour. Multiplying gives 0.4 grams of electricity-related operational emissions. In kilograms, the same amount is 0.0004, not 0.4. Keep the unit conversion visible.

If the assumed intensity were 600 grams per kilowatt-hour instead, the estimated operational emissions would be 0.8 grams for the same energy. The computer did not become more energy hungry in that calculation. We changed the emissions factor attached to its electricity. Neither intensity is offered as the current value for a country, cloud region or electricity supplier.

Dividing the first operational estimate by four completed requests gives 0.1 grams per completed request for this chosen boundary. It remains an illustrative operational figure. A real calculation should identify the intensity source, location, time basis and whether it uses an average or another defined measure. The SCI specification makes electricity intensity a separate input [1]; an energy reading alone cannot supply that information or describe the emissions from manufacturing the hardware.

Apply the facility factor once. Original compatible-boundary example with PUE 1.2. Applying it to a partial component reading would not establish complete facility energy.
Original compatible-boundary example with PUE 1.2. Applying it to a partial component reading would not establish complete facility energy. · Ameer Journal — original explanatory diagramOriginal editorial illustration; no third-party artwork reused.
10

An unknown hardware footprint is not a zero hardware footprint

Computing equipment also has emissions associated with its creation and disposal. The SCI specification treats the allocated share of those embodied emissions separately from electricity-related emissions. [1] We have supplied no device lifecycle assessment, expected service life or resource-allocation record for our imaginary equipment, so that share is unknown here.

This matters when naming the result. The specification's structure combines operational emissions and allocated embodied emissions before expressing the result per functional unit. We can calculate our illustrative operational part, but we cannot fill the missing embodied term with zero just because the necessary information is absent. Doing so would change an incomplete assessment into a falsely complete-looking one.

The same care applies to the broader system boundary. A short inference interval does not automatically cover training, storage, networking, service support or end-user equipment. Decide which significant components belong in the stated assessment and explain the treatment of each. A clearly bounded operational example can teach useful arithmetic. It should keep that name rather than claim to be the total environmental footprint of an AI model or the complete consequence of a user's request.

11

Keep the definitions beside the number

Imagine receiving only the number “400 joules per request”. In our example, that refers to a baseline-subtracted total divided by completed requests. The gross figure for the same run is 1,000 joules per completed request, while the gross figure per accepted result is about 1,333.3. Without the definitions, a reader could mistake changes in accounting for changes in the machine.

A useful comparison record therefore travels with the number. It describes the task and acceptance rule, the equipment included, the measurement or estimation method, the time window, energy units and work count. It then names the baseline, facility factor and electricity-intensity assumptions, stating which adjustments are already present. If hardware-related emissions or significant system components are unresolved, the record says so.

Finally, retain totals as well as averages. A lower energy-per-request value does not by itself establish a lower total if the amount of work changes. Our calculations answer a precise reading question: why two plausible-looking AI energy numbers can disagree. To decide whether a real change is better, first make the boundaries and work definitions comparable, then inspect the paired measurements and their limitations. A familiar model name and a smaller headline number cannot do that work for you.

The operational example is not a complete footprint. Original calculation from stipulated facility energy and electricity intensity. Embodied emissions are unknown; no full SCI or measured carbon result is claimed.
Original calculation from stipulated facility energy and electricity intensity. Embodied emissions are unknown; no full SCI or measured carbon result is claimed. · Ameer Journal — original explanatory diagramOriginal editorial illustration; no third-party artwork reused.
Follow the evidence

Sources & further reading

Explore the references behind this guide. External pages may change after our review.

  1. Software Carbon Intensity specification — official source document
    Green Software Foundation · Accessed 7 Nov 2026
  2. Methodology - CodeCarbon
    CodeCarbon maintainers · Accessed 7 Nov 2026
  3. Accuracy and Validation - CodeCarbon
    CodeCarbon maintainers · Accessed 7 Nov 2026
  4. Output Formats - CodeCarbon
    CodeCarbon maintainers · Accessed 7 Nov 2026
  5. MLPerf Inference power measurement policy
    MLCommons · Accessed 7 Nov 2026

Article updated 7 Nov 2026.

Found something we should revisit?

Good explanations get better with thoughtful feedback.

Suggest a correction