STAxCache: An Approximate, Energy Efficient STT-MRAM Cache

Ashish Ranjan1,a, Swagath Venkataramani1,b, Zoha Pajouhi1,c, Rangharajan Venkatesan2, Kaushik Roy1,d and Anand Raghunathan1,e
1School of Electrical and Computer Engineering, Purdue University.
aaranjan@purdue.edu
bvenkata0@purdue.edu
czpajouhi@purdue.edu
dkaushik@purdue.edu
eraghunathan@purdue.edu
2NVIDIA Research, Santa Clara.
rangharajanv@nvidia.com

ABSTRACT


STT-MRAM has attracted great interest for use as on-chip memory due to its high density, near-zero leakage and high endurance. However, its overall energy efficiency is limited by the energy requirements of spin-transfer torque switching during writes and reliable single-ended sensing during reads. Leveraging the ability of many applications to produce acceptable outputs under approximations to computations and data, we propose the use of approximate storage to improve the energy efficiency of STT-MRAM based caches. Towards this end, we explore a combination of different approximation techniques at the circuit and architecture levels that yield significant energy benefits for small probabilities of errors in reads, writes, and retention. A key challenge arises when introducing approximate storage into a cache - data that can tolerate different levels of approximation (or not at all) may be dynamically loaded into a cache line at different times. In addition, it is necessary to manage the approximations so as to obtain a desirable energy-quality tradeoff at the application level. We propose STAxCache (Spintronic Approximate Cache), an STT-MRAM based approximate L2 cache architecture that retains the full flexibility of a conventional cache, while allowing for different levels of approximation to different parts of a program's memory address space. We introduce a simple interface that allows the programmer to specify the quality requirements for different data structures, and instructions in the ISA to expose this information to STAxCache. We utilize a device-to-architecture simulation framework to evaluate STAxCache and achieve 1.44 × improvement in L2 cache energy for negligible ( < 0.5%) loss in application-level quality across a suite of 8 benchmarks.

Keywords: Spintronics, STT-MRAM, Approximate caches.



Full Text (PDF)