A Resilient Interface for Approximate Data Access
Approximate memories offer lower energy cost while introducing errors to applications. If such errors affect essential parts of the application, the execution may fail, decreasing outputs quality and energy savings. We present AxRAM, a memory architecture interface for approximate data that allows applications to benefit from energy savings provided by approximate memories, while improving quality of results and failure rates. AxRAM places critical application data into non-approximate memory regions and implements a resilient addressing scheme that reduces invalid data accesses that lead to application crashes. Compared to an unprotected approximate memory, AxRAM reduces 50.97% of application crashes on average. Compared to a system using non-approximate memories, AxRAM reduces energy consumption by 45.36% on average while providing at least 80% output quality.
L. Kugler "Is ‘good enough’ computing good enough?" Communications of the ACM vol. 58 no. 5 pp. 12-14 2015.
A. Sampson J. Nelson K. Strauss L. Ceze "Approximate storage in solid-state memories" MICRO pp. 25-36 2013.
V. De S. Vangal R. Krishnamurthy "Near Threshold Voltage (NTV) computing: Computing in the dark silicon era" IEEE Design and Test vol. 34 no. 2 pp. 24-30 2017.
J. Wang B. H. Calhoun "Minimum supply voltage and yield estimation for large SRAMs under parametric variations" IEEE VLSI vol. 19 no. 11 pp. 2120-2125 2011.
P. Loloeyan H. Nikmehr "Do we need approximate-aware cache in dark silicon era?" ICTCK pp. 466-472 2016.
M. Gottscho M. Shoaib S. Govindan B. Sharma D. Wang P. Gupta "Measuring the Impact of Memory Errors on Application Performance" IEEE Computer Architecture Letters vol. 16 no. 1 pp. 51-55 2017.
A. Sampson W. Dietl E. Fortuna D. Gnanapragasam L. Ceze D. Grossman "EnerJ: Approximate Data Types for Safe and General Low-Power Computation" PLDI pp. 164 2011.
A. Ranjan S. Venkataramani Z. Pajouhi R. Venkatesan K. Roy A. Raghunathan "STAxCache: An approximate energy efficient STT-MRAM cache" DATE pp. 356-361 2017.
A. Raha S. Sutar H. Jayakumar V. Raghunathan "Quality configurable approximate DRAM" IEEE Transactions on Computers vol. 66 no. 7 pp. 1172-1187 2017.
I. Felzmann J. Fabrício Filho R. Azevedo L. Wanner "Impact of memory approximation on energy efficiency" WSCAD pp. 53-60 2018.
I. B. Felzmann M. M. Susin L. Duenha R. Azevedo L. F. Wanner "ADeLe: A description language for approximate hardware" FCGS vol. 102 pp. 245-258 2020.
S. Rigo G. Araújo M. Bartholomeu R. Azevedo "ArchC: A SystemC-based architecture description language" SBAC-PAD pp. 66-73 2004.
A. N. Avanaki "Exact global histogram specification optimized for structural similarity" Optical Review vol. 16 no. 6 pp. 613-621 2009.
L.-N. Pouchet Polybench: The polyhedral benchmark suite 2012 [online] Available: http://web.cs.ucla.edu/pouchet/software/polybench/.
I. Gouy Computer Language Benchmarks Game 2004 [online] Available: https://benchmarksgame-team.pages.debian.net/benchmarksgame/.
G. Fursin Collective Benchmark 2008 [online] Available: http://ctuning.org/cbench.
M. R. Guthaus J. S. Ringenberg D. Ernst T. M. Austin T. Mudge R. B. Brown "MiBench: A free commercially representative embedded benchmark suite" IEEE WWC pp. 3-14 2001.
A. Yazdanbakhsh D. Mahajan H. Esmaeilzadeh P. Lotfi-Kamran "AxBench: A multiplatform benchmark suite for approximate computing" IEEE Design and Test vol. 34 no. 2 pp. 60-68 2017.