How to set CPU frequency to highest?

How does doing heavy computation affect the power consumption and heat generation of a CPU?

  • I am wondering the exact physics and mechanics behind the power usage, heat difference between a CPU idleing with the OS vs a CPU currently running many computationally heavy processes. What do the instruction sets being fed in these two circumstances look like? How does the latter use more power, create more heat if the CPU is always running at the same clock frequency? Do different instructions within the instruction set use more/less energy? And idle/heavy has less/more of these instructions within the instruction set? Can you please explain the physics of it using pfets and nfets? What are some design principles for ULV mobile processors, and what sets the limits for the voltage and why?

  • Answer:

    Typically, an operating system that is idling will issue a halt or wait-for-interrupt type of instruction (on ARM, that's usually either a WFI or a WFE). On most modern processors, this is actually enough to put the CPU into some kind of sleep state. On modern x86 processors (and some ARM ones), this puts it into a clock-gating mode in which the CPU is not clocked. This obviously reduces the power consumption and heat generation of a processor. There is no activity inside save for a very small number (relatively) of "always on" cells to keep track of things for when the processor wakes up. There is still leakage at this point, however. If an operating system is bad and doesn't know enough to issue a halt instruction, it will generally send a string of no-op instructions -- no modern OS does this. Every architecture includes some sort of no-op (nop) instruction which usually consists of just all 0's. For a typical micro-architecture, nop's are decoded and then tossed aside. The processor will continue to do things like pre-fetching and decoding, so power in the cache system and decoder will still be used, but that's generally a small fraction of the power consumed by the CPU. Even active instructions vary in how much power they require. A 128-bit SIMD floating point multiply-add, for instance, typically consumes the worst-case power compared to a 32-bit AND operation.

Jonathan Kang at Quora Visit the source

Was this solution helpful to you?

Other answers

Modern computers use significant power only when doing work. So if you're doing more work, you're drawing more power. A properly designed PC is able to deliver all the power it'll ever need, but in practice may rarely or even never actually get there. At the high level, there's software power management. Many devices can be shut down when not being used.. smart I/O and system software does exactly that. This is kind of hit or miss on PCs, better on laptops, and generally very good on mobile devices. And of course, even if something's running, if it only has a little work to do, it can go into a low-power idle state for much of the time. At the low level, it's all about CMOS transistors. CMOS means "complementary Metal-Oxide Semiconductor", which basically says that for any switch, you have one transistor to switch a signal to "1", another to switch it to "0" -- that's the "complementary" part. A CMOS transistor is basically a little wire made of silicon that can be turned off or on via a voltage applied to a "gate". The transistor is an excellent switch -- when off, it presents a nearly perfect open circuit, when on, a conducting path with a resistance in the milli-ohm range. The problem is switching -- when you change the state on a CMOS gate, both transistors transition through the "active" part of their operation, in which that little silicon wire acts like a resistor. A resistor is basically a device that converts power to heat. So as you switch CMOS devices, they consume power... when sitting still, barely any.

Dave Haynie

CMOS gates only draw power when they change state, so all things being equal, the CPU draws more power when it's doing something computationally intensive than when you're just surfing the Web. I can give anecdotal proof of this. My computer occasionally shuts itself off when the BIOS senses the CPU temperature is too high. This happens only under one set of circumstances - it's a hot day, the CPU heat sink has got a bit clogged with dust, and it's doing a video format conversion, for example converting an MP4 movie to XVID. ThisĀ  format conversion is probably the most computationally intensive job my computer ever has to do, involving heavy use of the maths coprocessor. That's a second processor-within-a-processor which, in normal activity, never gets used at all.

Peter Hand

Related Q & A:

Just Added Q & A:

Find solution

For every problem there is a solution! Proved by Solucija.

  • Got an issue and looking for advice?

  • Ask Solucija to search every corner of the Web for help.

  • Get workable solutions and helpful tips in a moment.

Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.