# Alpaca: Intermittent Execution without Checkpoints

arXiv: https://arxiv.org/abs/1909.06951 · HTML: https://mlsanity.com/paper/1909.06951/

## Key facts

- Cited by 10 papers in the map (data through 14 Oct 2026).
- First posted on arXiv 13 Sep 2019.

## Built on by (most cited first, 10 of 10)

- [DrugLLM: Open Large Language Model for Few-shot Molecule Generation](https://mlsanity.com/paper/2405.06690/) (2024)
- [Counter Turing Test CT^2: AI-Generated Text Detection is Not as Easy as You May Think -- Introducing AI Detectability Index](https://mlsanity.com/paper/2310.05030/) (2023)
- [VGA: Vision GUI Assistant -- Minimizing Hallucinations through Image-Centric Fine-Tuning](https://mlsanity.com/paper/2406.14056/) (2024)
- [Optimsyn: Influence-Guided Rubrics Optimization for Synthetic Data Generation](https://mlsanity.com/paper/2604.00536/) (2026)
- [HL Dataset: Visually-grounded Description of Scenes, Actions and Rationales](https://mlsanity.com/paper/2302.12189/) (2023)
- [OpenBezoar: Small, Cost-Effective and Open Models Trained on Mixes of Instruction Data](https://mlsanity.com/paper/2404.12195/) (2024)
- [Symphony-MoE: Harmonizing Disparate Pre-trained Models into a Coherent Mixture-of-Experts](https://mlsanity.com/paper/2509.18542/) (2025)
- [Memory-efficient Energy-adaptive Inference of Pre-Trained Models on Batteryless Embedded Systems](https://mlsanity.com/paper/2405.10426/) (2024)
- [MuPlon: Multi-Path Causal Optimization for Claim Verification through Controlling Confounding](https://mlsanity.com/paper/2509.25715/) (2025)
- [Managing Task Execution for Unknown Workloads in Batteryless IoT: A Hardware-Agnostic Evaluation](https://mlsanity.com/paper/2606.24340/) (2026)

## Abstract (arXiv)

The emergence of energy harvesting devices creates the potential for batteryless sensing and computing devices. Such devices operate only intermittently, as energy is available, presenting a number of challenges for software developers. Programmers face a complex design space requiring reasoning about energy, memory consistency, and forward progress. This paper introduces Alpaca, a low-overhead programming model for intermittent computing on energy-harvesting devices. Alpaca programs are composed of a sequence of user-defined tasks. The Alpaca runtime preserves execution progress at the granularity of a task. The key insight in Alpaca is the privatization of data shared between tasks. Updates of shared values in a task are privatized and only committed to main memory on successful execution of the task, ensuring that data remain consistent despite power failures. Alpaca provides a familiar programming interface and a highly efficient runtime model. We also present an alternate version of Alpaca, Alpaca-undo, that uses undo-logging and rollback instead of privatization and commit. We implemented a prototype of both versions of Alpaca as an extension to C with an LLVM compiler pass. We evaluated Alpaca, and directly compared to three systems from prior work. Alpacaconsistently improves performance compared to the previous systems, by up to 23.8x, while also improving memory footprint in many cases, by up to 17.6x.
