2

I have servers that are running applications and are mostly idle (60-70% idle cpu). They also show a very high number of C3 Transitions/sec (2.5-3.5k/sec per core) as well as high C3 times (58%+ in _Total)

C3 Time is supposedly low power state. Should I be concerned that my server is transitioning out of it 25K times /sec (~3k x 8 cores)

(Windows server 2008 R2)

a_mole
  • 123
  • 1
  • 3

1 Answers1

3

Your CPU enters these sleep states because it doesn't have enough work to keep it busy. It's normal behavior.

There is a slight latency involved in bringing a CPU back from a sleep state such as C3, but it is weighed against the alternative of wasting energy on powering a CPU that doesn't have anything to do.

If you run an application that is extremely sensitive to latency, and might need to "wake up" instantaneously from being idle (think like high-frequency trading, real-time simulations, etc.) You might want to consider disabling your processor's power-saving features. (And burn some trees and kick over some recycling bins why you're at it, why don't ya'...)

If you don't like it, you can disable C3 (and other C-states) in the BIOS of the computer.

Also check the Power Plan in Windows and make sure it's set to High Performance.

From Perfmon on the C3 power state:

Shows the percentage of time that the processor spent in the C3 low-power idle state. % C3 Time is a subset of the total processor idle time. When the processor is in the C3 low-power idle state it is unable to maintain the coherency of its caches. The C3 power state is a lower power and higher exit latency state than C2. Not all systems support the C3 state.

A quick overview of the various C-states:

• C0 – Active: CPU is on. C0 is the operating state.

• C1 – Auto Halt: core clock is off. C1 is a state where the processor is not executing instructions, but can return to an executing state essentially instantaneously. Some processors also support an Enhanced C1 state (C1E) for lower power consumption.

• C2 – Stop Clock: core and bus clocks are off. C2 is a state where the processor maintains all software-visible state, but may take longer to wake up.

• C3 – Deep Sleep: clock generator is off. C3 is a state where the processor does not need to keep its cache coherent, but maintains other states. Some processors have variations on the C3 state (Deep Sleep, Deeper Sleep, etc.) that differ in how long it takes to wake the processor.

• C4 – Deeper Sleep: reduced VCC

• DC4 – Deeper C4 Sleep: further reduced VCC

(Again, you should be able to disable what you don't want in the BIOS menu. Consult your manuals.)

Ryan Ries
  • 55,481
  • 10
  • 142
  • 199
  • Thanks, I guess I'm just puzzled why this behavior is normal. coming out of C3 3000/sec per core seems excessive, but I don't pretend to actually know if its. I'll try the high performance power plan first, since the application is somewhat latency-sensitive. – a_mole Oct 29 '14 at 16:52