# How efficient is a desktop computer?

As I understand it (and admittedly it's a weak grasp), a computer processes information irreversibly (AND gates, for example), and therefore has some minimum entropy increase associated with its computations. The true entropy increase is much greater, and comes from the conversion of electrical energy to heat.

How efficient is a typical desktop computer when viewed in this light? Make any assumptions you find useful about the energy use, computations per second, temperature of the room, etc.

-
@David (minimum $\Delta S$) / (actual $\Delta S$) –  Mark Eichenlaub Dec 23 '10 at 6:02
@Mark: I am not really sure, but why should there be a minimum $\Delta S$? It's possible to do a reversible computation (at least in principle; in practice you can approximate that arbitrarily well), so there's no good definition of minimal entropy. Or do you have one? –  Marek Dec 23 '10 at 10:11
100% efficient in heating the room. –  mbq Dec 23 '10 at 10:44
Minimal in theory attainable entropy for processing one bit of information will be $kT\ln2$. –  Raskolnikov Dec 23 '10 at 11:21
@Marek Thanks for the link on reversible computing. I wasn't aware of that. I suppose a reasonable answer to the original question would then be "zero". We could still consider the minimum $\Delta S$ obtainable by a machine doing exactly the same logical operations as the desktop computer. So if my computer does AND on two bits, the other computer would have to do AND as efficiently as possible. –  Mark Eichenlaub Dec 23 '10 at 21:09

Assuming a typical computer with CPU processing power ~1 GHz. It means that it can generate output byte sequence at ~$10^9$ byte/s, which is about ~$10^{-13}$ J/K in terms of von Neumann entropy. Also, the power consumption of a typical CPU is ~100 W, which gives entropy ~0.3 J/K at room temperature.

So the (minimum ΔS) / (actual ΔS) ~ $10^{-14}$

This calculation is not quite right because it is hard to determine what is the actual output of a computer. In most case, the previous output will be used as input later. The above calculation has also made the assumption that all output is continuously written in some external device.

A better point of view is that each gates taking two inputs and one output, such as AND, OR, NAND, ..., must drop one bit to the surrounding as heat. This is the minimum energy $W$ required to process information in a classical computer. In this sense, we may define the efficiency as $e = W/Q$, where $Q$ is the actual heat generation per second.

The efficiency depends on how many such logical gates that will be used, but I guess it is less than thousand in a typical clock rate, so $e \approx 10^{-11}$.

It means that our computer is very low efficiency in terms of information processing, but probably good as a heater. This theoretical minimum energy requirement is also hard to verified by experiment because of the high accuracy required.

-
@hwalu, could you please clarify how you arrived at these numbers ? –  New Horizon Jun 28 '11 at 4:49
One number that would be handy is the ratio of electrical power consumption to the power dissipated through various known means (thermal and electromagnetic come to mind). The energy dissipated is obviously waste, placing an upper bound on the actual efficiency figure. –  romkyns Oct 4 '12 at 14:03

Some info from ASIC world: For example, you processor have 300 mil. transistors, and most of these do some work. But, in order to make for example pure 32-bit add operation you need just about 1000 of them. Others are for caching and passing data back and forth - support functions which are impossible to estimate. So estimations from math side are very hard to make.

Modern process design already targets for energy per switch, and it's being optimized. Unfortunately, the slower speed you need - the more efficient processor runs. For example, to get 50% of speed you can spend just about 10% of power.

So they are deadly inefficient (and there is still room for 100-10000 times improvement), but estimating CPU as a whole is wrong. You should take into account only minimal computing unit used, like summator, you cannot predict how many switches you would have in support logic which takes 98% of chip area.

-

For all practical purposes today the answers above are very informative.

However, as Marek has pointed out above, your fundamental theoretical model of the thermodynamics of computation, on which you are basing the question is, surprisingly, wrong, as we first began to discover 50 years ago (see refs. to Landauer Charlie Bennet, Friedkin, others). Actually, all computations are in principle, dissipation free, except for the dissipation required to overwrite or forget previously stored bits.

The classic example is this. Suppose you want to compute the next to the last binary digit of the zillionth prime or some such. Then you do so, slowly and reversibly, carefully not overwriting any of the intermediate bits you generate, which requires a lot of space. Perhaps you even make use of quantum entanglement in the computer. Then you write the answer, by overwriting (irreversibly forgetting) the single bit of the answer in some (say external) register. Then you can reverse the original computation, also without any dissipation at all. You are left having to dissipate only the entropy necessary to overwrite the 1 bit of the recorded answer, because that is the only information you were forced to forget.

Since the denominator approaches zero, in theory, the theoretical answer to your question is infinity. There is a tradeoff with space to hold all the intermediate results. This is a surprise, a shock really, but it shows the power of clear thought. It is intimately connected with quantum computing, but also has entirely classical models.

So the right theoretical way to ask your question would be more like, for a particular computation, to be completed in a time t, operating with a limited memory of x bits, what is the necessary dissipation. I'm no expert, but will try to get more refs. PS. The resting brain probably uses about 20 Watts.

-
+1 I think this is a good answer, (I've been thinking about this kind of thing lately), but there is one thing that I think is often neglected when people think that quantum / reversible computing won't dissipate. This is initialization of memory: as you point out in the second paragraph, one must in general use much memory so as not to forget intermediate bits. But this in itself is a "forgetting" - you're forgetting the state that the bits are in before initialization .... –  WetSavannaAnimal aka Rod Vance Aug 22 '13 at 8:09
I think Bennett in The thermodynamics of computation: a review talks about this insofar that it is trivial to make any computation reversible: what one must strive to do is make it reversible without growing in memory uncontrollably as the calculation unfolds. When you think about it, "initialization" has some likeness to cooling - you won't get around this even in quantum computing on Earth - you'll have to shift your computer to deep space so that $k T \log 2$ is small! –  WetSavannaAnimal aka Rod Vance Aug 22 '13 at 8:12