Application-Driven Synthesis of Energy-Efficient Reconfigurable-Precision Operators

The increasing performance demands in emerging Internet of Things applications clash with the low energy budgets of end-nodes. Therefore, hardware operators able to reconfigure their computational precision at runtime are increasingly employed in these devices, to obtain good-enough results at minimal energy costs. Among the many methods proposed to implement such operators, Dynamic Voltage and Accuracy Scaling (DVAS) is particularly promising, due to its broad applicability and low overheads. However, a straight-forward application of DVAS conflicts with the optimizations performed by classic EDA algorithms, and does not yield the expected results. In this paper, we propose a novel synthesis algorithm for reconfigurable-precision circuits, that allows to integrate DVAS in a standard implementation flow. Moreover, we show how this algorithm can exploit information about the application, namely on the frequency of usage of each precision, to further reduce the total energy consumption. Applying our method to the popular LeNet neural network for digit recognition, we are able to reduce the energy due to Multiply-And-Accumulate (MAC) operations by 25%, compared to a straight-forward application of DVAS.

[1]  Kaushik Roy,et al.  Design of voltage-scalable meta-functions for approximate computing , 2011, 2011 Design, Automation & Test in Europe.

[2]  Enrico Macii,et al.  A methodology for the design of dynamic accuracy operators by runtime back bias , 2017, Design, Automation & Test in Europe Conference & Exhibition (DATE), 2017.

[3]  Massimo Alioto,et al.  Energy-quality scalable adaptive VLSI circuits and systems beyond approximate computing , 2017, Design, Automation & Test in Europe Conference & Exhibition (DATE), 2017.

[4]  Pritish Narayanan,et al.  Deep Learning with Limited Numerical Precision , 2015, ICML.

[5]  Yoshua Bengio,et al.  Gradient-based learning applied to document recognition , 1998, Proc. IEEE.

[6]  Rakesh Kumar,et al.  On reconfiguration-oriented approximate adder design and its application , 2013, 2013 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[7]  Andrew B. Kahng,et al.  Accuracy-configurable adder for approximate arithmetic designs , 2012, DAC Design Automation Conference 2012.

[8]  Marian Verhelst,et al.  DVAS: Dynamic Voltage Accuracy Scaling for increased energy-efficiency in approximate computing , 2015, 2015 IEEE/ACM International Symposium on Low Power Electronics and Design (ISLPED).

[9]  Yoshua Bengio,et al.  Low precision arithmetic for deep learning , 2014, ICLR.

[10]  Fabrizio Lombardi,et al.  A low-power, high-performance approximate multiplier with configurable partial error recovery , 2014, 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[11]  Giovanni De Micheli,et al.  Synthesis and Optimization of Digital Circuits , 1994 .

[12]  Kaushik Roy,et al.  Analysis and characterization of inherent application resilience for approximate computing , 2013, 2013 50th ACM/EDAC/IEEE Design Automation Conference (DAC).

[13]  Marian Verhelst,et al.  DVAFS: Trading computational accuracy for energy through dynamic-voltage-accuracy-frequency-scaling , 2017, Design, Automation & Test in Europe Conference & Exhibition (DATE), 2017.

[14]  Qiang Xu,et al.  Approximate Computing: A Survey , 2016, IEEE Design & Test.

[15]  Daniel Ménard,et al.  The hidden cost of functional approximation against careful data sizing — A case study , 2017, Design, Automation & Test in Europe Conference & Exhibition (DATE), 2017.