Intermittent computing is a system design paradigm for batteryless, energy-harvesting devices where computations are guaranteed to complete correctly despite frequent, unpredictable power failures. It treats power loss as a normal, expected event rather than a catastrophic failure. Core enabling technologies include non-volatile memory (NVM) for persistent state and checkpointing mechanisms that save computational progress at fine granularity, allowing tasks to resume seamlessly when power returns.
Glossary
Intermittent Computing

What is Intermittent Computing?
A programming model for devices powered by unpredictable energy sources, where computations must survive frequent power losses.
This paradigm is foundational for the Internet of Things (IoT), enabling perpetual operation for sensors and microcontrollers powered by ambient sources like light, vibration, or radio waves. It requires a fundamental shift from traditional, continuous execution models to one built on task-based atomicity and state persistence. Key challenges involve minimizing the energy overhead of frequent checkpoints and designing algorithms that are inherently interruption-tolerant, often leveraging hardware features like processor retention states and memory remanence.
Key System Components & Techniques
Intermittent computing systems are architected from the ground up to survive unpredictable power cycles. This requires specialized hardware, novel memory architectures, and unique programming models.
Non-Volatile Memory (NVM)
The cornerstone of intermittent computing, Non-Volatile Memory (NVM) retains data without power. Unlike traditional RAM (volatile), NVM like Ferroelectric RAM (FeRAM), Magnetoresistive RAM (MRAM), or Resistive RAM (ReRAM) is used to store both program state and data. This allows the system to resume execution from a known checkpoint after a power failure. Key uses include:
- Storing live register and stack state.
- Holding intermediate computation results.
- Maintaining the program counter for precise resumption.
Checkpointing & State Consistency
Checkpointing is the software technique of periodically saving a consistent snapshot of the system's volatile state to non-volatile memory. The core challenge is ensuring state consistency—the saved checkpoint must represent a valid, recoverable program state to avoid corruption. Techniques include:
- Idempotent operations: Designing computations so they can be safely repeated after a restart.
- Atomic regions: Grouping instructions that must all complete or be rolled back together.
- Logging: Recording changes to data structures to enable replay or rollback.
Energy Harvesting Power Subsystem
These systems are powered by energy harvesters that convert ambient energy (light, vibration, thermal, RF) into electricity. The power subsystem is critical and includes:
- Harvester: The transducer (e.g., photovoltaic cell, piezoelectric element).
- Power Management Unit (PMU): Conditions the erratic harvested power, manages storage, and controls power rails.
- Energy Storage: A small capacitor or trickle-charged battery that acts as a buffer. The PMU only enables the main processor when sufficient energy is stored for a meaningful burst of computation, leading to the characteristic intermittent operation.
Task-Based Programming Models
Traditional sequential programming fails under intermittent power. Task-based models break computation into discrete, restartable units. Frameworks like DINO and Chain allow developers to define tasks with explicit dependencies. The runtime system automatically:
- Schedules tasks when energy is available.
- Checkpoints task outputs to NVM.
- Ensures tasks are executed exactly once, even across multiple power cycles. This abstraction hides the complexity of manual state management from the programmer.
Volatile/Non-Volatile Memory Hierarchy
An efficient system uses a hybrid memory architecture to balance speed and persistence.
- Fast Volatile Cache (SRAM): Used for active computation.
- Persistent Non-Volatile Main Memory (NVM): Stores checkpoints and critical data. Data moves between these tiers under programmer or runtime control. The goal is to minimize expensive writes to NVM (which are slower and more energy-intensive than reads) while ensuring no critical data is lost when power fails.
Progress-Aware Algorithms
Standard algorithms assume continuous execution. Progress-aware algorithms are redesigned to maximize useful work per energy unit and guarantee forward progress across interruptions. Examples include:
- Intermittent Sorting: Algorithms that partially sort data with each burst, knowing the state is saved.
- Approximate Computing: Trading exactness for completion, producing a "good enough" result sooner if a full run is impossible.
- Energy-Adaptive Methods: Algorithms that can adjust their fidelity or path based on available energy in the capacitor.
How Intermittent Computing Works: The Execution Cycle
Intermittent computing defines a specific execution cycle to guarantee forward progress despite unpredictable power failures.
The core execution cycle is a checkpoint-and-restore loop. A program executes in volatile main memory until a power failure is imminent, detected by a voltage monitor. The system then triggers a checkpoint, saving the program's critical state—including register values and heap/stack data—to non-volatile memory (NVM). Upon power restoration, a bootloader first runs, restoring this saved state before resuming the main application from the exact point of interruption.
This model requires energy-aware programming where tasks are decomposed into idempotent or restartable operations. Systems often employ a task-based programming model and dedicated hardware like Ferroelectric RAM (FeRAM) or Magnetoresistive RAM (MRAM) for fast, low-energy checkpoints. The goal is to minimize the energy overhead of each checkpoint to ensure net forward progress is made between power cycles.
Applications and Use Cases
Intermittent computing enables robust operation on devices powered by unpredictable energy sources, such as harvesters or tiny batteries. Its core applications span from environmental sensing to wearable health tech, where systems must survive frequent, abrupt power losses.
Environmental & Agricultural Monitoring
Deploying battery-less sensor nodes in remote fields or forests to monitor soil moisture, temperature, and air quality. These systems use energy harvesting from solar or microbial fuel cells. Key techniques include:
- Checkpointing to save sensor state to non-volatile memory (NVM) before power loss.
- Task-based programming models that break computations into atomic, restartable operations.
- Transiently-powered sensors that can operate for years without battery replacement.
Wearable & Implantable Medical Devices
Powering next-generation health monitors and bio-implants that harvest energy from body heat, motion, or light. Applications include:
- Continuous glucose monitoring with energy harvested from interstitial fluid.
- Cardiac event recorders that must log data reliably despite motion-induced power interruptions.
- Neural recording patches that use near-threshold computing to minimize energy per operation. The system must guarantee forward progress and data consistency for critical health metrics, often using hardware-assisted checkpointing in specialized microcontrollers.
Smart Building & Infrastructure Sensors
Embedding maintenance-free sensors into walls, bridges, or industrial equipment to monitor stress, vibration, and corrosion. These systems rely on piezoelectric or thermoelectric harvesters. Key challenges addressed:
- Duty cycling the radio for data transmission only when sufficient energy is stored.
- Volatile state reconstruction after a power failure to resume long-term trend analysis.
- Energy-aware scheduling that prioritizes critical measurements (e.g., crack detection) over less urgent tasks when energy is scarce.
Space & Harsh Environment Electronics
Operating computing systems in satellites or planetary rovers where power is sporadic due to eclipses, dust storms, or extreme temperatures. Intermittent computing ensures:
- Scientific data integrity from instruments across power cycles.
- Reliable command execution for actuators, using idempotent operations to prevent double-actuation after a restart.
- Fault containment where a power loss resets a faulty state without requiring a full ground intervention. Systems often employ radiation-hardened non-volatile flip-flops and persistent task queues.
Backscatter & RFID-Scale Computing
Pushing computation to the extreme limits of energy availability with devices powered entirely by harvested RF signals. Applications include:
- Computational RFID tags that can perform sensor data filtering before responding to a reader.
- Battery-less inventory sensors that log temperature exposure history across a supply chain.
- Smart dust concepts for massively distributed sensing. These systems operate in the subthreshold or deep subthreshold voltage region and use asynchronous logic to maximize energy efficiency. Execution is often managed by a transiently-powered operating system kernel.
Frequently Asked Questions
Intermittent computing enables systems to function on harvested energy, where power failures are the norm, not the exception. This FAQ addresses the core concepts, mechanisms, and trade-offs of this critical paradigm for energy-autonomous devices.
Intermittent computing is a system design and programming paradigm for devices powered by unreliable energy sources, such as harvesters, where computations must survive frequent, unpredictable power losses. It works by combining non-volatile memory (NVM) with checkpointing mechanisms. The system's volatile state (CPU registers, SRAM) is periodically saved to NVM. When power fails and later returns, a bootloader or resume routine restores the most recent checkpoint, allowing the computation to continue from where it left off, rather than restarting from the beginning.
Enabling Efficiency, Speed & Accuracy
Intelligent Analysis, Decision & Execution
We build AI systems for teams that need search across company data, workflow automation across tools, or AI features inside products and internal software.
Talk to Us
Search across company data
Give teams answers from docs, tickets, runbooks, and product data with sources and permissions.
Useful when people spend too long searching or get different answers from different systems.

Automate internal workflows
Use AI to route work, draft outputs, trigger actions, and keep approvals and logs in place.
Useful when repetitive work moves across multiple tools and teams.

Add AI to products and internal tools
Build assistants, guided actions, or decision support into the software your team or customers already use.
Useful when AI needs to be part of the product, not a separate tool.
Related Terms
Intermittent computing exists within a broader ecosystem of hardware and software techniques designed for extreme energy efficiency. These related concepts define the constraints, metrics, and complementary strategies for deploying AI on power-frugal devices.
Checkpointing
A core software technique in intermittent computing where a system's volatile computational state (e.g., CPU registers, stack, heap variables) is periodically saved to non-volatile memory (NVM). Upon a power failure and subsequent restoration, the system can reload the most recent checkpoint and resume execution rather than restarting from the beginning. This transforms unpredictable power cycles into manageable, frequent save/restore operations.
Duty Cycling
A fundamental power management strategy where a system alternates between short, active periods of computation and long, idle periods in a low-power sleep state. The ratio of active time to total cycle time is the duty cycle. Intermittent computing can be viewed as an extreme, non-deterministic form of duty cycling, where the 'sleep' period is an uncontrolled power loss and the 'active' period is constrained by harvested energy.
Milliwatt Budget
A strict power consumption constraint, typically in the range of single-digit to tens of milliwatts, imposed on an edge device or subsystem. This budget is dictated by the average power output of an energy harvester or the discharge rate of a tiny battery. All system design—processor selection, sensor sampling rate, wireless communication, and inference frequency—must be engineered to operate within this stringent average power envelope.

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.
Partnered with leading AI, data, and software stack.
How We Work
Custom AI workflows for your Business
One-fit-all AI don't work for modern businesses. At Inferensys, we aim to understand your business & custom requirements; which we use to define most efficient agentic workflows, the data, and the tools for your business.
01
Review the use case
We understand the task, the users, and where AI can actually help.
Read more02
Pick the right approach
We define what needs search, automation, or product integration.
Read more03
Build the first useful version
We implement the part that proves the value first.
Read more04
Improve from there
We add the checks and visibility needed to keep it useful.
Read moreThe first call is a practical review of your use case and the right next step.
Talk to Us