In order to save energy when the CPU is idle, the CPU can be commanded to enter a low-power mode. Each CPU has several power modes and they are collectively called “C-states” or “C-modes.” In this tutorial we will explain what these modes are, what they do and the modes supported by each processor.
The lower-power mode was first introduced with the 486DX4 processor, so this concept is far from being new. With time, however, more power modes were introduced and enhancements were made to each mode so the CPU could consume less power when it is one of these low-power modes.
The basic idea of these modes is to cut the clock signal and power from idle units inside the CPU. The more units you stop (by cutting the clock), reduce the voltage or even completely shut down, more energy you save, but more time is required for the CPU to “wake up” and be again 100% operational.
These modes are known as “C-states.” They are numbered starting at C0, which is the normal CPU operating mode, i.e., the CPU is 100% turned on. The higher the C number is, deeper is the CPU sleep mode, i.e., more circuits and signals are turned off and more time the CPU will take to go back to C0 mode, i.e., to wake-up.
Each mode is also known by a name and several of them have sub-modes with different power saving – and thus wake-up time – levels.
In the table below we summarize all C-state modes currently available. Modes C1 to C3 work by basically cutting clock signals used inside the CPU, while modes C4 to C6 work by reducing the CPU voltage. “Enhanced” modes can do both at the same time.
|Mode||Name||What it does||CPUs|
|C0||Operating State||CPU fully turned on||All CPUs|
|C1||Halt||Stops CPU main internal clocks via software; bus interface unit and APIC are kept running at full speed.||486DX4 and above|
|C1E||Enhanced Halt||Stops CPU main internal clocks via software and reduces CPU voltage; bus interface unit and APIC are kept running at full speed.||All socket LGA775 CPUs|
|C1E||—||Stops all CPU internal clocks.||Turion 64, 65-nm Athlon X2 and Phenom CPUs|
|C2||Stop Grant||Stops CPU main internal clocks via hardware; bus interface unit and APIC are kept running at full speed.||486DX4 and above|
|C2||Stop Clock||Stops CPU internal and external clocks via hardware||Only 486DX4, Pentium, Pentium MMX, K5, K6, K6-2, K6-III|
|C2E||Extended Stop Grant||Stops CPU main internal clocks via hardware and reduces CPU voltage; bus interface unit and APIC are kept running at full speed.||Core 2 Duo and above (Intel only)|
|C3||Sleep||Stops all CPU internal clocks||Pentium II, Athlon and above, but not on Core 2 Duo E4000 and E6000|
|C3||Deep Sleep||Stops all CPU internal and external clocks||Pentium II and above, but not on Core 2 Duo E4000 and E6000; Turion 64|
|C3||AltVID||Stops all CPU internal clocks and reduces CPU voltage||AMD Turion 64|
|C4||Deeper Sleep||Reduces CPU voltage||Pentium M and above, but not on Core 2 Duo E4000 and E6000 series; AMD Turion 64|
|C4E/C5||Enhanced Deeper Sleep||Reduces CPU voltage even more and turns off the memory cache||Core Solo, Core Duo and 45-nm mobile Core 2 Duo only|
|C6||Deep Power Down||Reduces the CPU internal voltage to any value, including 0 V||45-nm mobile Core 2 Duo only|
Now we are going to explain each C-state in details.