Trends and Opportunities for SRAM Based In-Memory and Near-Memory Computation

Srivatsa Srinivasa1, Jainaveen Sundaram Priya2, Dileep Kurian3, Srinivasan Gopal2, Anuradha Srinivasan1, Vijaykrishnan Narayanan4, Tanay Karnik1
1Intel, 2Intel Corporation, 3Intel technologies, 4Penn State University


Changes in application trends along with increasing number of connected devices have led to explosion in the amount of data being generated every single day. Computing systems need to efficiently process these huge amounts of data and generate results, classify objects, stream high quality videos and so on. In-Memory Computing and Near-Memory Computing have been emerged as the popular design choices to address the challenges in executing the above-mentioned tasks. Through In-Memory Computing, SRAM Banks can be repurposed as compute engines while performing Bulk Boolean operations. Near-Memory techniques have shown promise in improving the performance of Machine learning tasks. By carefully understanding the design we describe the opportunities towards amalgamating both these design techniques for obtaining further performance enhancement and achieving lower power budget while executing fundamental Machine Learning primitives. In this work, we take the example of Sparse Matrix Multiplication, and design an I-NMC accelerator which speeds up the index handling by 10x-60x and 10x-70x energy efficiency based on the workload dimensions as compared with non I_NMC solution occupying just 1% of the overall hardware area.