Inferensys

Glossary

Sleep States (C-States)

Sleep states, or C-states, are predefined low-power modes in a processor where non-essential circuits are powered down or clock-gated, trading off wake-up latency for reduced static power consumption during idle periods.
Performance engineer optimizing AI latency on laptop, latency charts visible, technical optimization session.
POWER-AWARE TINYML

What is Sleep States (C-States)?

A foundational hardware technique for minimizing energy consumption in microcontroller-based TinyML systems during idle periods.

Sleep states (C-states) are predefined, hierarchical low-power modes in a microprocessor where non-essential circuits are progressively powered down or clock-gated, trading increased wake-up latency for drastically reduced static and dynamic power consumption during computational idle periods. Defined by standards like the Advanced Configuration and Power Interface (ACPI), deeper C-states (e.g., C2, C3) power down more components, such as caches and core logic, saving more energy but requiring more time and energy to restore context. In TinyML deployment, strategically entering deep C-states between sensor sampling or inference bursts is critical for extending battery life in always-on edge devices.

Effective use of C-states requires power-aware scheduling by the operating system or a real-time kernel to predict idle windows and manage the energy-delay product trade-off. This is coordinated with other techniques like Dynamic Voltage and Frequency Scaling (DVFS) and clock gating. For sensor-driven TinyML, an always-on (AON) domain or a wake-on-event mechanism from a simple peripheral allows the main processor to reside in a deep C-state until a meaningful inference trigger occurs, enabling energy-neutral operation in systems with energy harvesting integration.

POWER-AWARE TINYML

Common C-State Hierarchy

C-states (C0 through Cn) define a processor's idle power-saving modes, where deeper states (higher numbers) power down more circuitry for greater energy savings but incur longer wake-up latencies.

01

C0 (Active State)

The processor's fully active operational mode. All cores are executing instructions, and the clock is running at its configured frequency. Dynamic power is at its maximum, and static leakage power is fully present. This is the only state where useful computational work is performed.

02

C1 (Halt)

The core's execution pipeline is halted. The clock is typically stopped for the core (core clock gating), but the core remains powered and cache coherent. Wake-up latency is extremely low (often nanoseconds). This is the shallowest sleep state, offering minimal power savings by eliminating dynamic switching power for the core's logic.

03

C2 (Stop-Clock / Stop Grant)

A deeper sleep state where the core's clocks are fully stopped and its internal phase-locked loops (PLLs) may be disabled. Voltage may be slightly reduced. The core loses cache coherency, and its caches may be flushed. Wake-up requires restarting clocks, resulting in higher latency (microseconds) but greater static power reduction than C1.

04

C3 (Deep Sleep)

A core-level deep sleep state. The core's voltage is often reduced to its retention minimum. All core clocks are off, and the core's private caches are typically flushed and powered down. The last-level cache (LLC) may remain powered. This state achieves significant static (leakage) power reduction. Wake-up latency increases to tens of microseconds.

05

C6 (Deep Power Down)

An aggressive, core-level power gating state. The core's power domain is completely switched off using header/footer transistors, eliminating nearly all leakage power. The core's architectural state is saved to a dedicated SRAM (like the Core C6 SRAM) before power-down. This offers the highest core-level power savings but with wake-up latencies in the hundreds of microseconds.

06

Package C-States (PC-states)

These are system-level sleep states that affect the entire processor package, including shared resources like the last-level cache (LLC) and integrated memory controller. Examples include:

  • PC2: LLC remains powered but in a low-frequency mode.
  • PC6: The entire package domain is power-gated. Achieving this state typically requires all cores to be in a deep C-state (e.g., C6). It represents the deepest system sleep, enabling the lowest total system-on-chip (SoC) power for TinyML devices in extended idle periods.
POWER MANAGEMENT

C-States in TinyML and Edge AI

C-states, or CPU sleep states, are predefined low-power modes in a processor where non-essential circuits are powered down or clock-gated, trading off wake-up latency for reduced static power consumption during idle periods.

In TinyML and Edge AI systems, C-states are critical for extending battery life by minimizing static power (leakage) when a microcontroller is idle between inference tasks. Each deeper C-state (C1, C2, C3) powers down more internal components, saving more energy but incurring greater wake-up latency. System designers must map application duty cycles to the appropriate C-state to balance energy savings with responsiveness.

Effective use requires coordination with Dynamic Voltage and Frequency Scaling (DVFS) and power-aware scheduling. The Advanced Configuration and Power Interface (ACPI) standard defines these states for OS control. For always-on sensing, a minimal Always-On (AON) domain handles sensor polling, allowing the main core to reside in a deep C-state until a wake-on-event trigger demands full inference, optimizing the energy-delay product for the entire system.

SLEEP STATES (C-STATES)

Frequently Asked Questions

Sleep states, or C-states, are predefined low-power modes in a processor where non-essential circuits are powered down or clock-gated, trading off wake-up latency for reduced static power consumption during idle periods. This FAQ addresses key technical questions for hardware and battery life engineers implementing power-aware TinyML.

A C-state (CPU state) is a predefined low-power operating mode for a processor core, defined by the Advanced Configuration and Power Interface (ACPI) standard. It works by progressively powering down or clock-gating internal circuit blocks (caches, execution units) when the core is idle. Each deeper C-state (C1, C2, C3, etc.) turns off more circuitry, saving more leakage power but incurring a longer wake-up latency to return to the active C0 state. The operating system's idle driver places cores into the deepest C-state permissible given the system's latency tolerance.

Prasad Kumkar

About the author

Prasad Kumkar

CEO & MD, Inference Systems

Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.

His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.