The practical difference between CPU TDP and observed power draw illustrated
Last year, in the wake of doing power measurements on my work machine and my home machine, I wrote about how TDP is misleading. Recently I was re-reading this Anandtech article on the subject (via), and realized that I actually have a good illustration of the difference between TDP and power draw, and on top of that it turns out that I can generate some interesting numbers on the official power draw of my home machine's i7-8700K under load.
I'll start with the power consumption numbers for my machines. I have a 95 W TDP Intel CPU, but when
I go from idle to a full load of
mprime -t, my home machine's power
consumption goes from 40 watts to 174 watts, an increase of 134
watts. Some of the extra power consumption will come from the PSU
not being 100% efficient, but based on this review,
my PSU is still at least 90% efficient around the 175 watt level
(and less efficient at the unloaded 40 watt level). Other places
where the power might vanish on the way to the CPU are the various
fans in the system and any inefficiencies in power regulation and
supply that the motherboard has.
(Since motherboard voltage regulation systems get hot under load, they're definitely not 100% efficient. That heat doesn't appear out of nowhere.)
However, there's another interesting test that I can do with my
home machine. Since I have a modern Intel CPU, it supports Intel's
RAPL (Running Average Power Limit) system
and Mozilla has a
rapl program in the Firefox source tree
that will provide a report that is more or less the CPU's power
usage, as Intel thinks it is.
Typical output from
rapl for my home machine under light load, such as
writing this entry over a SSH connection in an
xterm, looks like this
(over 5 seconds):
total W = _pkg_ (cores + _gpu_ + other) + _ram_ W [...] #06 3.83 W = 2.29 ( 1.16 + 0.05 + 1.09) + 1.54 W
When I load my machine up with '
mprime -t', I get this (also over
#146 106.23 W = 100.15 (97.46 + 0.01 + 2.68) + 6.08 W #147 106.87 W = 100.78 (98.04 + 0.06 + 2.68) + 6.09 W
Intel's claimed total power consumption for all cores together is surprisingly close to their 95 W TDP figure, and Intel says that the whole CPU package has increased its power draw by about 100 watts. That's not all of the way to my observed 134 watt power increase, but it's a lot closer than I expected.
(Various things I've read are inconsistent about whether or not I should be expecting my CPU to be exceeding its TDP in terms of power draw under a sustained full load. Also, who knows what the BIOS has set various parameters to, cf. I haven't turned on any overclocking features other than an XMP memory profile, but that doesn't necessarily mean much with PC motherboards.)
As far as I know AMD Ryzen has no equivalent to Intel's RAPL, so I
can't do similar measurements on my work machine. But now that
I do the math on my power usage measurements, both the Ryzen and the Intel increased
their power draw by the same 134 watts as they went from idle to a
mprime -t load. Their different power draw under full load
is entirely accounted for by the Ryzen idling 26 watts higher than