Neural Acceleration for General-Purpose Approximate Programs
Top Cited Papers
- 1 December 2012
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
- No. 10724451,p. 449-460
- https://doi.org/10.1109/micro.2012.48
Abstract
This paper describes a learning-based approach to the acceleration of approximate programs. We describe the \emph{Parrot transformation}, a program transformation that selects and trains a neural network to mimic a region of imperative code. After the learning phase, the compiler replaces the original code with an invocation of a low-power accelerator called a \emph{neural processing unit} (NPU). The NPU is tightly coupled to the processor pipeline to accelerate small code regions. Since neural networks produce inherently approximate results, we define a programming model that allows programmers to identify approximable code regions -- code that can produce imprecise but acceptable results. Offloading approximable code regions to NPUs is faster and more energy efficient than executing the original code. For a set of diverse applications, NPU acceleration provides whole-application speedup of 2.3× and energy savings of 3.0× on average with quality loss of at most 9.6%.Keywords
This publication has 33 references indexed in Scilit:
- Codesign Tradeoffs for High-Performance, Low-Power Linear Algebra ArchitecturesIEEE Transactions on Computers, 2012
- Managing performance vs. accuracy trade-offs with loop perforationPublished by Association for Computing Machinery (ACM) ,2011
- EnerJPublished by Association for Computing Machinery (ACM) ,2011
- Automatic abstraction and fault tolerance in cortical microachitecturesPublished by Association for Computing Machinery (ACM) ,2011
- A case for neuromorphic ISAsPublished by Association for Computing Machinery (ACM) ,2011
- Wafer-scale integration of analog neural networksPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2008
- CHiMPSPublished by Association for Computing Machinery (ACM) ,2008
- GPU implementation of neural networksPattern Recognition, 2004
- Energy-efficient signal processing via algorithmic noise-tolerancePublished by Association for Computing Machinery (ACM) ,1999
- A high-performance microarchitecture with hardware-programmable functional unitsPublished by Association for Computing Machinery (ACM) ,1994