0
\$\begingroup\$

Are there any perks in keeping a CPU at a low temperature; between 0 and 20 degrees Celsius in particular?

In particular, does it produce less errors in computation and therefore slightly improved performance or response time?

\$\endgroup\$
6
  • 1
    \$\begingroup\$ Either a CPU works just fine because it is kept cool enough, or it burns up and shorts out. Most major CPU's have built-in temperature sensors that throttle back the clock speed and shut down what is not needed. They protect themselves. If a special cooler is needed, it is most likely sold with the CPU. If / when you buy a CPU, go over the datasheet in fine detail. I am just generalizing behaviour, not answering your questions. \$\endgroup\$ – user105652 Jun 23 '16 at 2:05
  • 1
    \$\begingroup\$ As an additional point to the one Sparky256 made, just about every CPU since the Pentium 4's has has thermal throttling good enough that you can pull off the heatsink while it's still running and the computer will keep functioning. In fact, a friend of mine was having heat problems with an i7-4890K, it would run fine, but kept sitting at 100'C and the PC was kinda slow. Turns out the heatsink wasn't even making contact with the CPU. Anecdotes aside, I know Google is now running their datacenter CPUs at ~90'C to cut their cooling bills, so I'm betting even at 90'C errors are very rare. \$\endgroup\$ – Sam Jun 23 '16 at 5:04
  • \$\begingroup\$ does it produce less errors in computation You expect a CPU to just produce errors and "deal with it" ?? It does not work like that ! When errors occur, the system will crash. The CPU must always be able to compute as it was designed to do. If it cannot do that then it is not working properly. \$\endgroup\$ – Bimpelrekkie Jun 23 '16 at 6:11
  • \$\begingroup\$ @FakeMoustache, actually yes, I believe there is some kind of cross computation and comparisons on some operations but maybe I am wrong. I did not check that before asking actually. \$\endgroup\$ – alainsanguinetti Jun 23 '16 at 6:17
  • \$\begingroup\$ Well there isn't. Simply think about the overhead (extra circuits) that would be needed to do that. And such errors are unpredictable so how can you design for them ? And how do you know your error-correction circuit isn't making errors ? So no: a CPU must be able to execute the instructions exactly as designed or it simply will not work. So at the same clock frequency, performance is identical at low and high temperatures. At low temperatures you can increase the clock until errors start to occur and then the CPU crashes. \$\endgroup\$ – Bimpelrekkie Jun 23 '16 at 6:25
3
\$\begingroup\$

If a CPU produces any errors at all in computations, we consider it "broken". If the CPUs temp specification gives it's normal operating temp range as 0 ~ 95 ˚C (for example) it will produce no errors over this entire range.

However, in general, semiconductor devices will draw less power at lower temperatures, so, ironically, if you spend some power to cool them, they will consume less power. This is usually not a very important attribute except to heat sink and power supply designers.

Digital logic propagation times usually decrease with decrease in temperature, i.e. the gates get "faster". Theoretically, you could increase the clock frequency of a CPU if you were to keep it cooler compared to when it was hot. This would of course make your computer faster. But you can't get fewer than 0 errors ;)

\$\endgroup\$
2
  • \$\begingroup\$ But if you increase the clock, you increase the power so you need to cool it down even more. \$\endgroup\$ – alainsanguinetti Jun 23 '16 at 4:25
  • \$\begingroup\$ True. It's like an arms race ;) But as long as you spend less additional money on cooling than a faster processor would cost, it's a net win. \$\endgroup\$ – AndyW Jun 23 '16 at 4:30
0
\$\begingroup\$

Very few designs of CPU are able to adjust their speed of operation based on continuous variations in the speed of the internal logic. Where this has been tried, its likely to be purely for research projects. Such a design might be termed asynchronous (even if it uses variants of classical sequential cells and a recognisable pipeline structure) due to the lack of a common distributed clock.

A cooler CPU will (all other things being equal) last longer in running hours. This is more significant at elevated temperatures, usually quite a small effect, and only likely to be noticeable at smaller geometries. Running at elevated voltages would have a much more significant impact on lifetime (but in a constrained temperature range, undervolting would be more feasible).

\$\endgroup\$
1
  • \$\begingroup\$ True enough. CPUs don't adjust themselves by measuring their own gate prop delays. But people can. There's a whole community of tinkerers (call "overclockers") who love to see how much faster they can run their CPUs than the rated clock frequency. \$\endgroup\$ – AndyW Jun 25 '16 at 1:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.