Werner Dietl
wdietl@uwaterloo.ca, Room EIT 4007
EnerJ: Approximate Data Types for Safe and General Low-Power Computation
Download: PDF.
“EnerJ: Approximate Data Types for Safe and General Low-Power Computation” by A. Sampson, W. Dietl, E. Fortuna, D. Gnanapragasam, L. Ceze, and D. Grossman. In Programming Language Design and Implementation (PLDI), June 2011, pp. 164-174.
Abstract
Energy is increasingly a first-order concern in computer systems. Exploiting energy-accuracy trade-offs is an attractive choice in applications that can tolerate inaccuracies. Recent work has explored exposing this trade-off in programming models. A key challenge, though, is how to isolate parts of the program that must be precise from those that can be approximated so that a program functions correctly even as quality of service degrades.
We propose using type qualifiers to declare data that may be subject to approximate computation. Using these types, the system automatically maps approximate variables to low-power storage, uses low-power operations, and even applies more energy-efficient algorithms provided by the programmer. In addition, the system can statically guarantee isolation of the precise program component from the approximate component. This allows a programmer to control explicitly how information flows from approximate data to precise data. Importantly, employing static analysis eliminates the need for dynamic checks, further improving energy savings. As a proof of concept, we develop EnerJ, an extension to Java that adds approximate data types. We also propose a hardware architecture that offers explicit approximate storage and computation. We port several applications to EnerJ and show that our extensions are expressive and effective; a small number of annotations lead to significant potential energy savings (10%-50%) at very little accuracy cost.
Keywords: EnerJ, energy, precise, approximate
Download: PDF.
BibTeX entry:
@inproceedings{EnerJ11, author = {A. Sampson and W. Dietl and E. Fortuna and D. Gnanapragasam and L. Ceze and D. Grossman}, title = {{EnerJ: Approximate Data Types for Safe and General Low-Power Computation}}, booktitle = {{Programming Language Design and Implementation (PLDI)}}, month = jun, }
Copyright notice: This material is presented to ensure timely dissemination of scholarly and technical work. Copyright and all rights therein are retained by authors or by other copyright holders. All persons copying this information are expected to adhere to the terms and constraints invoked by each author’s copyright. In most cases, these works may not be reposted without the explicit permission of the copyright holder.
(This webpage was created with bibtex2web.)