The AI/ML community is currently enamored with the "no free lunch theorem" as if it's some profound new insight into the nature of intelligence and optimisation. Everyone's talking about it, citing it in papers, using it to justify their latest architecture.

But if we want to talk about "no free lunch," let's talk about the actual lunch being consumed. The fundamental, physical, measurable lunch that the planet is paying for while we train ever-larger models and scale compute without bound.

Here are two numbers. Just two. They're not theoretical. They're not subject to interpretation. They're measurements:

Measure 1: Ocean Heat Content

Excess heat stored in the upper 0-2,000 meters of the global ocean. NOAA reports this as five-year mean anomalies in 1022 joules relative to the 1955-2006 baseline; here it's converted to exajoules above that baseline. NASA's ocean-warming indicator puts the blunt version plainly: about 90% of the excess heat from planetary warming over the past century has been absorbed by the ocean.

The trend is unmistakable. Each point is centred on a five-year window; every uptick is another slice of heat added to the ocean. NASA's ocean-warming indicator cites 372 zettajoules of excess energy through its December 2024 measurement. The NOAA series below now lands in the same brutal neighbourhood, with the exact plotted value calculated from the current source manifest at load time.

Even 372 zettajoules is about 3.7 × 1023 joules. Boiling a kettle of water (say 1 litre from tap temperature to boiling) takes on the order of 3.5 × 105 joules. Divide one by the other and you get something like 1018 kettles – a billion billion kettles' worth of heat that we've already pushed into the upper ocean.

Measure 2: Atmospheric CO2

Carbon dioxide concentration in the atmosphere, measured at Cape Grim, Tasmania since 1976. This is not the whole climate system, it's a very specific, blunt, dumb, datapoint. It is one clean (uncomfortable pun), measure of fossil-carbon residue left in the air by whatever you want to blame.

The point is not a hand-picked label on the final dot. It is the trajectory. The curve has moved from the high 320s into the 420s in a single human lifetime, and the exact latest value now comes from the source manifest loaded with this page.

500 Million Years Of CO2

One of my favourite charts is the "500 million years of CO2" plot. It is the one people like to pull out when they say "relax, we've had way higher CO2 in the past." They are not wrong about the heights - there have been periods with far more CO2 than today - but what they are accidentally showing is a chart where concentration usually changes unfathomably slowly.

For almost the entire history on that chart, CO2 meanders over millions of years. On that kind of timescale, our modern increase is so fast that the curve does not gently drift to the right, it effectively goes straight up. A line that thin and that vertical barely even registers on the horizontal axis.

The last times the graph shows anything close to that kind of abrupt change were not exactly fun epochs: think "large asteroid impact" and "super-volcano weekend." If you are tempted to say the rate of change does not matter, imagine going from 100 km/h to 1 km/h in 0.1 seconds. The start and end speeds are fine; the transition is what ruins your day.

The Real No Free Lunch

The AI community's obsession with theoretical limits on optimisation is almost quaint compared to the very real, very physical limits we're running into. But it is not just AI and ML people talking about "no free lunch." It's Bitcoiners defending an energy-hungry protocol. It's people (including me) who love big, comfortable cars. It's anyone trying to rationalise their next international flight.

The argument gets stuck in a loop. One side says you cannot keep dumping greenhouse gases into the atmosphere and expect the physical system to politely ignore it. That is true. The other side says you cannot run hospitals, trains, data centres, refrigeration, steel, aviation, agriculture, and comfortable modern life without energy. Also true. There are no low-energy, highly functional societies at industrial scale. That is why the fight is so slippery: both sides are pointing at a real lunch. The climate side points at atmospheric accumulation and ocean heat. The civilisation side points at the energy cost of complexity. The mistake is pretending one lunch cancels the other. It does not. It stacks.

Every training run, every inference request, every block mined, every long drive, every long-haul flight, every tonne of steel, every refrigerated warehouse, every server rack consumes energy. Some of that energy is cleaner than it used to be. A great deal of the total system still produces carbon somewhere in the chain, directly or indirectly. You can argue how to allocate the energy, how fast to transition, and which trade-offs are acceptable. You cannot argue the ledger out of existence.

These two metrics - CO₂ concentration and ocean heat content - are fundamental measures of lunch consumption. They're not negotiable. They're not dependent on which optimization algorithm you prefer. They're the scoreboard for the actual game we're playing.

The Irony

We can cite "no free lunch" all day long to explain why our models need more parameters, more data, more compute. But the planet is sending us an invoice for the actual lunch we're eating, and it's denominated in parts per million and zettajoules.

The numbers don't care about your loss curve. They don't care about your benchmark scores or your carefully reasoned Twitter thread about why your favourite technology is "worth it." They also do not care that civilisation needs energy. That argument may be true. It still has a cost. The numbers just accumulate, relentlessly, measuring the physical residue of our choices.

I do all of this too. I work with AI, I fly, I drive, I exist inside the same fossil-fuel infrastructure as everyone else. I'm not speaking from outside the system; I'm one of the people eating lunch.

Putting your head in the sand does not help anyone, though. Fundamental Lunch Consumption is my attempt to keep the scoreboard in view: two numbers that are hard to argue with, even if everything else is up for debate.


Data update: source manifest loading.

Data sources: Cape Grim CO2 measurements (CSIRO/Bureau of Meteorology); NOAA/NCEI pentadal ocean heat content (0-2000 m, WO column, 10^22 J) converted to exajoules; NASA Ocean Warming indicator.

← Back to home