Exploiting Errors for Efficiency: A Survey from Circuits to Algorithms

When a computational task tolerates a relaxation of its specification or when an algorithm tolerates the effects of noise in its execution, hardware, programming languages, and system software can trade deviations from correct behavior for lower resource usage. We present, for the first time, a synthesis of research results on computing systems that only make as many errors as their users can tolerate, from across the disciplines of computer aided design of circuits, digital system design, computer architecture, programming languages, operating systems, and information theory. Rather than over-provisioning resources at each layer to avoid errors, it can be more efficient to exploit the masking of errors occurring at one layer which can prevent them from propagating to a higher layer. We survey tradeoffs for individual layers of computing systems from the circuit level to the operating system level and illustrate the potential benefits of end-to-end approaches using two illustrative examples. To tie together the survey, we present a consistent formalization of terminology, across the layers, which does not significantly deviate from the terminology traditionally used by research communities in their layer of focus.

[1]  Naresh R. Shanbhag Reliable and energy-efficient digital signal processing , 2002, DAC '02.

[2]  Kathryn S. McKinley,et al.  Uncertain: a first-order type for uncertain data , 2014, ASPLOS.

[3]  Caro Lucas,et al.  Bio-Inspired Imprecise Computational Blocks for Efficient VLSI Implementation of Soft-Computing Applications , 2010, IEEE Transactions on Circuits and Systems I: Regular Papers.

[4]  Henry Hoffmann,et al.  Quality of service profiling , 2010, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

[5]  André B. J. Kokkeler,et al.  Improving Error Resilience Analysis Methodology of Iterative Workloads for Approximate Computing , 2017, Conf. Computing Frontiers.

[6]  Doron Rotem,et al.  Simple Random Sampling from Relational Databases , 1986, VLDB.

[7]  Kaushik Roy,et al.  Dynamic effort scaling: Managing the quality-efficiency tradeoff , 2011, 2011 48th ACM/EDAC/IEEE Design Automation Conference (DAC).

[8]  Krishna V. Palem,et al.  Probabilistic system-on-a-chip architectures , 2007, TODE.

[9]  John P. Hayes,et al.  The Promise and Challenge of Stochastic Computing , 2018, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[10]  Rami G. Melhem,et al.  Incorporating error recovery into the imprecise computation model , 1999, Proceedings Sixth International Conference on Real-Time Computing Systems and Applications. RTCSA'99 (Cat. No.PR00306).

[11]  Xin Li,et al.  An Architecture for Fault-Tolerant Computation with Stochastic Logic , 2011, IEEE Transactions on Computers.

[12]  John P. Hayes,et al.  Survey of Stochastic Computing , 2013, TECS.

[13]  Soummya Kar,et al.  Can a noisy encoder be used to communicate reliably? , 2014, 2014 52nd Annual Allerton Conference on Communication, Control, and Computing (Allerton).

[14]  Jaeyoon Kim,et al.  Inexact computing using probabilistic circuits , 2014, ACM J. Emerg. Technol. Comput. Syst..

[15]  Martin C. Rinard,et al.  Verifying quantitative reliability for programs that execute on unreliable hardware , 2013, OOPSLA.

[16]  Federico Tombari,et al.  Classification and evaluation of cost aggregation methods for stereo correspondence , 2008, 2008 IEEE Conference on Computer Vision and Pattern Recognition.

[17]  Peter Elias,et al.  Computation in the Presence of Noise , 1958, IBM J. Res. Dev..

[18]  Bo Chen,et al.  MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications , 2017, ArXiv.

[19]  J. von Neumann,et al.  Probabilistic Logic and the Synthesis of Reliable Organisms from Unreliable Components , 1956 .

[20]  Olivier Temam,et al.  Leveraging the error resilience of machine-learning applications for designing highly energy efficient accelerators , 2014, 2014 19th Asia and South Pacific Design Automation Conference (ASP-DAC).

[21]  Natalie D. Enright Jerger,et al.  Doppelgänger: A cache for approximate computing , 2015, 2015 48th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO).

[22]  Martin C. Rinard,et al.  Parallelizing Sequential Programs with Statistical Accuracy Tests , 2013, TECS.

[23]  Henry Hoffmann,et al.  Managing performance vs. accuracy trade-offs with loop perforation , 2011, ESEC/FSE '11.

[24]  Zhi-Hui Kong,et al.  Design of Low-Power High-Speed Truncation-Error-Tolerant Adder and Its Application in Digital Signal Processing , 2010, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[25]  Lav R. Varshney,et al.  Energy-reliability limits in nanoscale circuits , 2016, 2016 Information Theory and Applications Workshop (ITA).

[26]  Semeen Rehman,et al.  Architectural-space exploration of approximate multipliers , 2016, 2016 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[27]  Scott A. Mahlke,et al.  Paraprox: pattern-based approximation for data parallel applications , 2014, ASPLOS.

[28]  Naresh R. Shanbhag,et al.  Energy-efficient Motion Estimation using Error-Tolerance , 2006, ISLPED'06 Proceedings of the 2006 International Symposium on Low Power Electronics and Design.

[29]  Daniel A. Spielman,et al.  Highly fault-tolerant parallel computation , 1996, Proceedings of 37th Conference on Foundations of Computer Science.

[30]  Sandeep K. Gupta,et al.  Approximate logic synthesis for error tolerant applications , 2010, 2010 Design, Automation & Test in Europe Conference & Exhibition (DATE 2010).

[31]  Toby Berger,et al.  Lossy Source Coding , 1998, IEEE Trans. Inf. Theory.

[32]  Naresh R. Shanbhag,et al.  Soft digital signal processing , 2001, IEEE Trans. Very Large Scale Integr. Syst..

[33]  Lingamneni Avinash,et al.  Parsimonious Circuits for Error-Tolerant Applications through Probabilistic Logic Minimization , 2011, PATMOS.

[34]  R. Landauer,et al.  The Fundamental Physical Limits of Computation. , 1985 .

[35]  Martin C. Rinard,et al.  Efficiency Limits for Value-Deviation-Bounded Approximate Communication , 2015, IEEE Embedded Systems Letters.

[36]  Howard C. Card,et al.  Stochastic arithmetic implementations of neural networks with in situ learning , 1993, IEEE International Conference on Neural Networks.

[37]  Lara Dolecek,et al.  Optimal Design of a Gallager B Noisy Decoder for Irregular LDPC Codes , 2012, IEEE Communications Letters.

[38]  Shuvendu K. Lahiri,et al.  Verifying Relative Safety, Accuracy, and Termination for Program Approximations , 2016, Journal of Automated Reasoning.

[39]  Rahul Boyapati,et al.  APPROX-NoC: A data approximation framework for Network-on-Chip architectures , 2017, 2017 ACM/IEEE 44th Annual International Symposium on Computer Architecture (ISCA).

[40]  Nicholas J. Higham,et al.  INVERSE PROBLEMS NEWSLETTER , 1991 .

[41]  Onur Mutlu,et al.  Rollback-free value prediction with approximate loads , 2014, 2014 23rd International Conference on Parallel Architecture and Compilation (PACT).

[42]  Martin C. Rinard Probabilistic accuracy bounds for fault-tolerant computations that discard tasks , 2006, ICS '06.

[43]  Wei-Chung Cheng,et al.  Memory bus encoding for low power: a tutorial , 2001, Proceedings of the IEEE 2001. 2nd International Symposium on Quality Electronic Design.

[44]  Jie Han,et al.  Approximate computing: An emerging paradigm for energy-efficient design , 2013, 2013 18th IEEE European Test Symposium (ETS).

[45]  Forrest N. Iandola,et al.  SqueezeNet: AlexNet-level accuracy with 50x fewer parameters and <1MB model size , 2016, ArXiv.

[46]  Ku He,et al.  Modeling and synthesis of quality-energy optimal approximate adders , 2012, 2012 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[47]  A.P. Chandrakasan,et al.  A micropower programmable DSP using approximate signal processing based on distributed arithmetic , 2004, IEEE Journal of Solid-State Circuits.

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

[49]  Jean-François Nezan,et al.  Optimized fixed point implementation of a local stereo matching algorithm onto C66x DSP , 2014, Proceedings of the 2014 Conference on Design and Architectures for Signal and Image Processing.

[50]  Doron Rotem,et al.  Random Sampling from Database Files: A Survey , 1990, SSDBM.

[51]  Hadi Esmaeilzadeh,et al.  Neural acceleration for GPU throughput processors , 2015, 2015 48th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO).

[52]  Neil Zhao Full-Featured Pedometer Design Realized with 3-Axis Digital Accelerometer , 2010 .

[53]  Kaushik Roy,et al.  SALSA: Systematic logic synthesis of approximate circuits , 2012, DAC Design Automation Conference 2012.

[54]  Martin C. Rinard,et al.  Encoder logic for reducing serial I/O power in sensors and sensor hubs , 2016, 2016 IEEE Hot Chips 28 Symposium (HCS).

[55]  Krishna V. Palem,et al.  Energy Aware Algorithm Design via Probabilistic Computing: From Algorithms and Models to Moore?s Law and Novel (Semiconductor) Devices , 2003, HiPC.

[56]  Martin C. Rinard,et al.  Lax: Driver Interfaces for Approximate Sensor Device Access , 2015, HotOS.

[57]  Martin C. Rinard,et al.  Chisel: reliability- and accuracy-aware optimization of approximate computational kernels , 2014, OOPSLA.

[58]  Pulkit Grover Is “Shannon-capacity of noisy computing” zero? , 2014, 2014 IEEE International Symposium on Information Theory.

[59]  Mircea R. Stan,et al.  Bus-invert coding for low-power I/O , 1995, IEEE Trans. Very Large Scale Integr. Syst..

[60]  Mark D. Corner,et al.  Eon: a language and runtime system for perpetual systems , 2007, SenSys '07.

[61]  Alan Edelman,et al.  Language and compiler support for auto-tuning variable-accuracy algorithms , 2011, International Symposium on Code Generation and Optimization (CGO 2011).

[62]  Henri Casanova,et al.  High-Bandwidth Low-Latency Approximate Interconnection Networks , 2017, 2017 IEEE International Symposium on High Performance Computer Architecture (HPCA).

[63]  Michael A. Shanblatt,et al.  Architecture and statistical model of a pulse-mode digital multilayer neural network , 1995, IEEE Trans. Neural Networks.

[64]  Henrique S. Malvar,et al.  Approximate Storage of Compressed and Encrypted Videos , 2017, ASPLOS.

[65]  Olivier Temam,et al.  A defect-tolerant accelerator for emerging high-performance applications , 2012, 2012 39th Annual International Symposium on Computer Architecture (ISCA).

[66]  Song Han,et al.  Deep Compression: Compressing Deep Neural Network with Pruning, Trained Quantization and Huffman Coding , 2015, ICLR.

[67]  P. Stanley-Marbell,et al.  Encoding efficiency of digital number representations under deviation constraints , 2009, 2009 IEEE Information Theory Workshop.

[68]  Luiz André Barroso,et al.  The Case for Energy-Proportional Computing , 2007, Computer.

[69]  Wei-Kuan Shih,et al.  Algorithms for scheduling imprecise computations , 1991, Computer.

[70]  Ion Stoica,et al.  BlinkDB: queries with bounded errors and bounded response times on very large data , 2012, EuroSys '13.

[71]  Lav R. Varshney,et al.  Performance of LDPC Codes Under Faulty Iterative Decoding , 2008, IEEE Transactions on Information Theory.

[72]  Walter W. Soroka,et al.  Analog methods in computation and simulation , 1954 .

[73]  Huawei Li,et al.  Performance Portability Across Heterogeneous SoCs Using a Generalized Library-Based Approach , 2014, TACO.

[74]  Martin C. Rinard,et al.  Reducing serial I/O power in error-tolerant applications by efficient lossy encoding , 2016, 2016 53nd ACM/EDAC/IEEE Design Automation Conference (DAC).

[75]  Dan Grossman,et al.  Probability type inference for flexible approximate programming , 2015, OOPSLA.

[76]  Nikil D. Dutt,et al.  Exploiting Partially-Forgetful Memories for Approximate Computing , 2015, IEEE Embedded Systems Letters.

[77]  Wei-Kuan Shih,et al.  Algorithms for Scheduling Imprecise Computations with Timing Constraints to Minimize Maximum Error , 1995, IEEE Trans. Computers.

[78]  Kaushik Roy,et al.  Process Variation Tolerant Low Power DCT Architecture , 2007, 2007 Design, Automation & Test in Europe Conference & Exhibition.

[79]  Kaushik Roy,et al.  Approximate storage for energy efficient spintronic memories , 2015, 2015 52nd ACM/EDAC/IEEE Design Automation Conference (DAC).

[80]  Thierry Moreau,et al.  MATIC: Learning around errors for efficient low-voltage neural network accelerators , 2017, 2018 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[81]  Ruigang Yang,et al.  A Performance Study on Different Cost Aggregation Approaches Used in Real-Time Stereo Matching , 2007, International Journal of Computer Vision.

[82]  Anand Raghunathan,et al.  AXSERBUS: A quality-configurable approximate serial bus for energy-efficient sensing , 2017, 2017 IEEE/ACM International Symposium on Low Power Electronics and Design (ISLPED).

[83]  K. Baker,et al.  Standardized notation in interval analysis , 2010 .

[84]  Yoshua Bengio,et al.  BinaryConnect: Training Deep Neural Networks with binary weights during propagations , 2015, NIPS.

[85]  Song Han,et al.  EIE: Efficient Inference Engine on Compressed Deep Neural Network , 2016, 2016 ACM/IEEE 43rd Annual International Symposium on Computer Architecture (ISCA).

[86]  Woongki Baek,et al.  Green: a framework for supporting energy-conscious programming using controlled approximation , 2010, PLDI '10.

[87]  Naresh R. Shanbhag,et al.  Energy-efficient signal processing via algorithmic noise-tolerance , 1999, Proceedings. 1999 International Symposium on Low Power Electronics and Design (Cat. No.99TH8477).

[88]  Kaushik Roy,et al.  Significance driven computation: a voltage-scalable, variation-aware, quality-tuning motion estimator , 2009, ISLPED.

[89]  Fabrizio Lombardi,et al.  A comparative evaluation of approximate multipliers , 2016, 2016 IEEE/ACM International Symposium on Nanoscale Architectures (NANOARCH).

[90]  Alan Edelman,et al.  PetaBricks: a language and compiler for algorithmic choice , 2009, PLDI '09.

[91]  Ian Briggs,et al.  Rigorous floating-point mixed-precision tuning , 2017, POPL.

[92]  Brian R. Gaines,et al.  Stochastic computing , 1967, AFIPS '67 (Spring).

[93]  J. Douglas Faires,et al.  Numerical Analysis , 1981 .

[94]  Thierry Moreau,et al.  A Taxonomy of General Purpose Approximate Computing Techniques , 2018, IEEE Embedded Systems Letters.

[95]  Puneet Gupta,et al.  Trading Accuracy for Power with an Underdesigned Multiplier Architecture , 2011, 2011 24th Internatioal Conference on VLSI Design.

[96]  Paolo Ienne,et al.  Variable Latency Speculative Addition: A New Paradigm for Arithmetic Circuit Design , 2008, 2008 Design, Automation and Test in Europe.

[97]  Scott A. Mahlke,et al.  Rumba: An online quality management system for approximate computing , 2015, 2015 ACM/IEEE 42nd Annual International Symposium on Computer Architecture (ISCA).

[98]  Mark M. Meerschaert,et al.  Mathematical Modeling , 2014, Encyclopedia of Social Network Analysis and Mining.

[99]  Mario Badr,et al.  Load Value Approximation , 2014, 2014 47th Annual IEEE/ACM International Symposium on Microarchitecture.

[100]  Eva Darulova,et al.  Sound Mixed-Precision Optimization with Rewriting , 2017, 2018 ACM/IEEE 9th International Conference on Cyber-Physical Systems (ICCPS).

[101]  Ahmed M. Eltawil,et al.  Low-Power Multimedia System Design by Aggressive Voltage Scaling , 2010, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[102]  Phillip Stanley-Marbell,et al.  Probabilistic Value-Deviation-Bounded Integer Codes for Approximate Communication , 2018, ArXiv.

[103]  David R. Kaeli,et al.  Eliminating microarchitectural dependency from Architectural Vulnerability , 2009, 2009 IEEE 15th International Symposium on High Performance Computer Architecture.

[104]  R W Keyes,et al.  What Makes a Good Computer Device? , 1985, Science.

[105]  Martin C. Rinard,et al.  Incremental Color Quantization for Color-Vision-Deficient Observers Using Mobile Gaming Data , 2018, ArXiv.

[106]  Riccardo Bettati,et al.  Imprecise computations , 1994, Proc. IEEE.

[107]  Luca Benini,et al.  Approximate Compressed Sensing: Ultra-low power biosignal processing via aggressive voltage scaling on a hybrid memory multi-core processor , 2014, 2014 IEEE/ACM International Symposium on Low Power Electronics and Design (ISLPED).

[108]  Scott A. Mahlke,et al.  SAGE: Self-tuning approximation for graphics engines , 2013, 2013 46th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO).

[109]  Gary M. Weiss,et al.  Design considerations for the WISDM smart phone-based sensor mining architecture , 2011, SensorKDD '11.

[110]  Andreas Peter Burg,et al.  Mitigating the impact of faults in unreliable memories for error-resilient applications , 2015, 2015 52nd ACM/EDAC/IEEE Design Automation Conference (DAC).

[111]  Martin C. Rinard,et al.  Approximate computation with outlier detection in Topaz , 2015, OOPSLA.

[112]  Sharad Malik,et al.  CommGuard: Mitigating Communication Errors in Error-Prone Parallel Execution , 2015, ASPLOS.

[113]  Howard C. Card,et al.  Stochastic Neural Computation I: Computational Elements , 2001, IEEE Trans. Computers.

[114]  Kaushik Roy,et al.  Scalable effort hardware design: Exploiting algorithmic resilience for energy efficiency , 2010, Design Automation Conference.

[115]  Asit K. Mishra,et al.  iACT: A Software-Hardware Framework for Understanding the Scope of Approximate Computing , 2014 .

[116]  Gu-Yeon Wei,et al.  HELIX-UP: Relaxing program semantics to unleash parallelization , 2015, 2015 IEEE/ACM International Symposium on Code Generation and Optimization (CGO).

[117]  Eunhyeok Park,et al.  Compression of Deep Convolutional Neural Networks for Fast and Low Power Mobile Applications , 2015, ICLR.

[118]  Sherief Reda,et al.  Automated High-Level Generation of Low-Power Approximate Computing Circuits , 2019, IEEE Transactions on Emerging Topics in Computing.

[119]  Martin C. Rinard,et al.  Crayon: saving power through shape and color approximation on next-generation displays , 2016, EuroSys.

[120]  Wei Luo,et al.  Joint precision optimization and high level synthesis for approximate computing , 2015, 2015 52nd ACM/EDAC/IEEE Design Automation Conference (DAC).

[121]  Yixin Chen,et al.  Compressing Neural Networks with the Hashing Trick , 2015, ICML.

[122]  Sergio L. Toral Marín,et al.  Stochastic pulse coded arithmetic , 2000, 2000 IEEE International Symposium on Circuits and Systems. Emerging Technologies for the 21st Century. Proceedings (IEEE Cat No.00CH36353).

[123]  Trevor Mudge,et al.  Razor: a low-power pipeline based on circuit-level timing speculation , 2003, Proceedings. 36th Annual IEEE/ACM International Symposium on Microarchitecture, 2003. MICRO-36..

[124]  Bruno Olshausen,et al.  Human-centric computing — The case for a Hyper-Dimensional approach , 2017, 2017 7th IEEE International Workshop on Advances in Sensors and Interfaces (IWASI).

[125]  William S. Evans,et al.  On the Maximum Tolerable Noise for Reliable Computation by Formulas , 1998, IEEE Trans. Inf. Theory.

[126]  Jacob Nelson,et al.  Approximate storage in solid-state memories , 2013, MICRO-46.

[127]  Dan Grossman,et al.  EnerJ: approximate data types for safe and general low-power computation , 2011, PLDI '11.

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

[129]  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.

[130]  Robert A. Meyers,et al.  Encyclopedia of Complexity and Systems Science , 2009 .

[131]  Jan M. Rabaey,et al.  Digital Integrated Circuits: A Design Perspective , 1995 .

[132]  Kaushik Roy,et al.  Quality programmable vector processors for approximate computing , 2013, 2013 46th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO).

[133]  Gu-Yeon Wei,et al.  Minerva: Enabling Low-Power, Highly-Accurate Deep Neural Network Accelerators , 2016, 2016 ACM/IEEE 43rd Annual International Symposium on Computer Architecture (ISCA).

[134]  Krishna V. Palem,et al.  Energy aware computing through probabilistic switching: a study of limits , 2005, IEEE Transactions on Computers.

[135]  Luis Ceze,et al.  Neural Acceleration for General-Purpose Approximate Programs , 2012, 2012 45th Annual IEEE/ACM International Symposium on Microarchitecture.

[136]  Jacob Nelson,et al.  SNNAP: Approximate computing on programmable SoCs via neural acceleration , 2015, 2015 IEEE 21st International Symposium on High Performance Computer Architecture (HPCA).

[137]  Norbert Wehn,et al.  Invited: Approximate computing with partially unreliable dynamic random access memory — Approximate DRAM , 2016, 2016 53nd ACM/EDAC/IEEE Design Automation Conference (DAC).

[138]  Alexander Aiken,et al.  Stochastic optimization of floating-point programs with tunable precision , 2014, PLDI.

[139]  John Sartori,et al.  Slack redistribution for graceful degradation under voltage overscaling , 2010, 2010 15th Asia and South Pacific Design Automation Conference (ASP-DAC).

[140]  John P. Hayes,et al.  Fast and accurate computation using stochastic circuits , 2014, 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[141]  Pramod K. Varshney,et al.  Noise-Enhanced Information Systems , 2014, Proceedings of the IEEE.

[142]  Song Liu,et al.  Flikker: saving DRAM refresh-power through critical data partitioning , 2011, ASPLOS XVI.

[143]  Sparsh Mittal,et al.  A Survey of Techniques for Approximate Computing , 2016, ACM Comput. Surv..

[144]  Martin C. Rinard,et al.  Proving acceptability properties of relaxed nondeterministic approximate programs , 2012, PLDI.

[145]  Srikanth Kandula,et al.  Quickr: Lazily Approximating Complex AdHoc Queries in BigData Clusters , 2016, SIGMOD Conference.

[146]  Luis Ceze,et al.  General-purpose code acceleration with limited-precision analog computation , 2014, 2014 ACM/IEEE 41st International Symposium on Computer Architecture (ISCA).

[147]  Yoshua Bengio,et al.  FitNets: Hints for Thin Deep Nets , 2014, ICLR.

[148]  A. R. Newton,et al.  Alpha-power law MOSFET model and its applications to CMOS inverter delay and other formulas , 1990 .

[149]  Andreas Gerstlauer,et al.  Approximate logic synthesis under general error magnitude and frequency constraints , 2013, 2013 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[150]  Kaushik Roy,et al.  Low-Power Digital Signal Processing Using Approximate Adders , 2013, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[151]  Thu D. Nguyen,et al.  ApproxHadoop: Bringing Approximations to MapReduce Frameworks , 2015, ASPLOS.

[152]  Andreas Gerstlauer,et al.  High-level synthesis of approximate hardware under joint precision and voltage scaling , 2017, Design, Automation & Test in Europe Conference & Exhibition (DATE), 2017.

[153]  Enrico Macii,et al.  Serial T0: Approximate bus encoding for energy-efficient transmission of sensor signals , 2016, 2016 53nd ACM/EDAC/IEEE Design Automation Conference (DAC).

[154]  Muhammad Shafique,et al.  A low latency generic accuracy configurable adder , 2015, 2015 52nd ACM/EDAC/IEEE Design Automation Conference (DAC).

[155]  Felipe Restrepo-Calle,et al.  A review of approximate computing techniques towards fault mitigation in HW/SW systems , 2018, 2018 IEEE 19th Latin-American Test Symposium (LATS).

[156]  Martin Rinard,et al.  Warp: A Hardware Platform for Efficient Multimodal Sensing With Adaptive Approximation , 2020, IEEE Micro.

[157]  Krishna V. Palem,et al.  Probabilistic arithmetic and energy efficient embedded signal processing , 2006, CASES '06.

[158]  David A. Patterson,et al.  In-datacenter performance analysis of a tensor processing unit , 2017, 2017 ACM/IEEE 44th Annual International Symposium on Computer Architecture (ISCA).

[159]  Martin C. Rinard Using early phase termination to eliminate load imbalances at barrier synchronization points , 2007, OOPSLA.

[160]  Vijayalakshmi Srinivasan,et al.  Programming with relaxed synchronization , 2012, RACES '12.

[161]  Natalie D. Enright Jerger,et al.  The Bunker Cache for spatio-value approximation , 2016, 2016 49th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO).

[162]  David Hull,et al.  ICS - A system for imprecise computations , 1993 .

[163]  James Demmel,et al.  Precimonious: Tuning assistant for floating-point precision , 2013, 2013 SC - International Conference for High Performance Computing, Networking, Storage and Analysis (SC).

[164]  Zhengya Zhang,et al.  A Native Stochastic Computing Architecture Enabled by Memristors , 2014, IEEE Transactions on Nanotechnology.

[165]  Suren Jayasuriya,et al.  Reconfiguring the Imaging Pipeline for Computer Vision , 2017, 2017 IEEE International Conference on Computer Vision (ICCV).

[166]  Henrique S. Malvar,et al.  High-Density Image Storage Using Approximate Memory Cells , 2016, ASPLOS.

[167]  Muhammad Shafique,et al.  Invited: Cross-layer approximate computing: From logic to architectures , 2016, 2016 53nd ACM/EDAC/IEEE Design Automation Conference (DAC).

[168]  Sumit Gulwani,et al.  Proving programs robust , 2011, ESEC/FSE '11.

[169]  Luis Ceze,et al.  Architecture support for disciplined approximate programming , 2012, ASPLOS XVII.

[170]  John E. Savage,et al.  A framework for coded computation , 2008, 2008 IEEE International Symposium on Information Theory.

[171]  Igor L. Markov,et al.  Limits on fundamental limits to computation , 2014, Nature.

[172]  Joan Bruna,et al.  Exploiting Linear Structure Within Convolutional Networks for Efficient Evaluation , 2014, NIPS.

[173]  Melvin A. Breuer,et al.  Multi-media applications and imprecise computation , 2005, 8th Euromicro Conference on Digital System Design (DSD'05).

[174]  Natalie D. Enright Jerger,et al.  The Anytime Automaton , 2016, 2016 ACM/IEEE 43rd Annual International Symposium on Computer Architecture (ISCA).

[175]  Rahul Sarpeshkar,et al.  Analog Versus Digital: Extrapolating from Electronics to Neurobiology , 1998, Neural Computation.

[176]  Bruce M. Maggs,et al.  Reconfiguring Arrays with Faults Part I: Worst-Case Faults , 1997, SIAM J. Comput..

[177]  Xin Zhang,et al.  FlexJava: language support for safe and modular approximate programming , 2015, ESEC/SIGSOFT FSE.

[178]  Lara Dolecek,et al.  ACOCO: Adaptive Coding for Approximate Computing on Faulty Memories , 2015, IEEE Transactions on Communications.

[179]  Stelios Sidiroglou,et al.  Dancing with uncertainty , 2012, RACES '12.

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