C-states: more power efficient CPU idle states explained

Do C-states reduce performance too, in addition to power consumption?

Introduction

Turning on C-states is a way to limit the power consumption of the processor when idling. In this article we explain, through benchmarks, which type of performance is impacted and how.

Intel and AMD have been implementing so-called 'C-states' in their products for years, which make the processor work slower if it is not being used, so that it consumes less power. These C-states can be configured in the BIOS. However there is some obscurity surrounding this technology; it is not exactly clear what these various C-states do exactly and what their effect on performance is in practice. Higher C-states should save more power, however what is the difference exactly between C1E and C3, and why are their both Package and Core C-states?

From Skylake onwards C8 is also supported in desktops.

C-states should not be confused with so-called 'global states', where the system actually powers off or goes into Stand-by (e.g. S0, S1 and S3). Once configured C-states are automatically controlled by the motherboard and the operating system, without the user having to take any extra steps. A higher C-state means that the processor is in a deeper 'sleep', which means that it consumes less power, however performance will in turn also decrease due to various reasons.