A Hybrid Approximate Computing Approach for Associative In-Memory Processors

The complexity of the computational problems is rising faster than the computational platforms’ capabilities which are also becoming increasingly costly to operate due to their increased need for energy. This forces researchers to find alternative paradigms and methods for efficient computing. One promising paradigm is accelerating compute-intensive kernels using in-memory computing accelerators, where data movements are significantly reduced. Another increasingly popular method for improving energy efficiency is approximate computing. In this paper, we propose a methodology for efficient approximate in-memory computing. To maximize energy savings for a given approximation constraints, a hybrid approach is presented combining both voltage and precision scaling. This can be applied to an associative memory-based architecture that can be implemented today using CMOS memories (SRAM) but can be seamlessly scaled to emerging ReRAM-based memory technology later with minimal effort. For the evaluation of the proposed methodology, a diverse set of domains is covered, such as image processing, machine learning, machine vision, and digital signal processing. When compared to full-precision, unscaled implementations, average energy savings of <inline-formula> <tex-math notation="LaTeX">$5.17{\times}$ </tex-math></inline-formula> and <inline-formula> <tex-math notation="LaTeX">$59.11{\times}$ </tex-math></inline-formula>, and speedups of <inline-formula> <tex-math notation="LaTeX">$2.1{\times}$ </tex-math></inline-formula> and <inline-formula> <tex-math notation="LaTeX">$3.24{\times}$ </tex-math></inline-formula> in SRAM-based and ReRAM-based architectures, respectively, are reported.

[1]  Mohsen Imani,et al.  Multi-Stage Tunable Approximate Search in Resistive Associative Memory , 2018, IEEE Transactions on Multi-Scale Computing Systems.

[2]  Shekhar Y. Borkar Exascale Computing - A Fact or a Fiction? , 2013, IPDPS.

[3]  David Blaauw,et al.  Shortstop: An on-chip fast supply boosting technique , 2013, 2013 Symposium on VLSI Circuits.

[4]  Caxton C. Foster Content Addressable Parallel Processors , 1976 .

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

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

[7]  Tajana Simunic,et al.  ORCHARD: Visual object recognition accelerator based on approximate in-memory processing , 2017, 2017 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

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

[9]  Jishen Zhao,et al.  Approximate image storage with multi-level cell STT-MRAM main memory , 2017, 2017 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[10]  Emmanuelle M. Grafals,et al.  Voltage divider effect for the improvement of variability and endurance of TaOx memristor , 2016, Scientific Reports.

[11]  Hadi Esmaeilzadeh,et al.  AxBench: A Multiplatform Benchmark Suite for Approximate Computing , 2017, IEEE Design & Test.

[12]  Tajana Rosing,et al.  Resistive CAM Acceleration for Tunable Approximate Computing , 2019, IEEE Transactions on Emerging Topics in Computing.

[13]  Chris Yakopcic,et al.  Generalized Memristive Device SPICE Model and its Application in Circuit Design , 2013, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[14]  Ahmed M. Eltawil,et al.  Process variations-aware resistive associative processor design , 2016, 2016 IEEE 34th International Conference on Computer Design (ICCD).

[15]  Isaac D. Scherson,et al.  A Reconfigurable Fully Parallel Associative Processor , 1989, J. Parallel Distributed Comput..

[16]  Meng-Fan Chang,et al.  A 65nm 1Mb nonvolatile computing-in-memory ReRAM macro with sub-16ns multiply-and-accumulate for binary DNN AI edge processors , 2018, 2018 IEEE International Solid - State Circuits Conference - (ISSCC).

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

[18]  Peilin Song,et al.  1Mb 0.41 µm2 2T-2R cell nonvolatile TCAM with two-bit encoding and clocked self-referenced sensing , 2013, 2013 Symposium on VLSI Circuits.

[19]  Eisse Mensink,et al.  A Double-Tail Latch-Type Voltage Sense Amplifier with 18ps Setup+Hold Time , 2007, 2007 IEEE International Solid-State Circuits Conference. Digest of Technical Papers.

[20]  Josep Torrellas,et al.  Coping with Parametric Variation at Near-Threshold Voltages , 2013, IEEE Micro.

[21]  Tajana Simunic,et al.  Resistive configurable associative memory for approximate computing , 2016, 2016 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[22]  Jerry L. Potter Associative Computing: A Programming Paradigm for Massively Parallel Computers , 1992 .

[23]  Ran Ginosar,et al.  Resistive Associative Processor , 2015, IEEE Computer Architecture Letters.

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

[25]  Luca Benini,et al.  Approximate associative memristive memory for energy-efficient GPUs , 2015, 2015 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[26]  Kia Bazargan,et al.  Axilog: Language support for approximate hardware design , 2015, 2015 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[27]  Vijayalakshmi Srinivasan,et al.  Approximate computing: Challenges and opportunities , 2016, 2016 IEEE International Conference on Rebooting Computing (ICRC).

[28]  Yu Cao,et al.  Exploring sub-20nm FinFET design with Predictive Technology Models , 2012, DAC Design Automation Conference 2012.

[29]  Josep Torrellas,et al.  VARIUS-NTV: A microarchitectural model to capture the increased sensitivity of manycores to process variations at near-threshold voltages , 2012, IEEE/IFIP International Conference on Dependable Systems and Networks (DSN 2012).

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

[31]  Kaushik Roy Approximate computing for energy-efficient error-resilient multimedia systems , 2013, DDECS.

[32]  J. Yang,et al.  Anatomy of a Nanoscale Conduction Channel Reveals the Mechanism of a High‐Performance Memristor , 2011, Advanced materials.

[33]  Ahmed M. Eltawil,et al.  Approximate Memristive In-memory Computing , 2017, ACM Trans. Embed. Comput. Syst..