Toward an Energy Efficient Language and Compiler for (Partially) Reversible Algorithms
Nirvan Tyagi, Jayson Lynch, Erik D. Demaine

TL;DR
This paper presents Eel, a novel programming language designed for energy-efficient computation using a partially reversible model, supporting reversible and irreversible operations with energy-space trade-offs and advanced control structures.
Contribution
Introduction of Eel, a language that leverages partial reversibility, with a compiler and interpreter to optimize and analyze energy costs in algorithms.
Findings
Eel supports energy-cost analysis through simulation.
The language enables trade-offs between energy and space.
It introduces new control operators for reversible programming.
Abstract
We introduce a new programming language for expressing reversibility, Energy-Efficient Language (Eel), geared toward algorithm design and implementation. Eel is the first language to take advantage of a partially reversible computation model, where programs can be composed of both reversible and irreversible operations. In this model, irreversible operations cost energy for every bit of information created or destroyed. To handle programs of varying degrees of reversibility, Eel supports a log stack to automatically trade energy costs for space costs, and introduces many powerful control logic operators including protected conditional, general conditional, protected loops, and general loops. In this paper, we present the design and compiler for the three language levels of Eel along with an interpreter to simulate and annotate incurred energy costs of a program.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Quantum Computing Algorithms and Architecture · Low-power high-performance VLSI design
