PyPIM: Integrating Digital Processing-in-Memory from Microarchitectural Design to Python Tensors
Orian Leitersdorf, Ronny Ronen, Shahar Kvatinsky

TL;DR
PyPIM offers an end-to-end integration of memristive processing-in-memory from high-level Python tensor operations to low-level microarchitectural control, simplifying development and enhancing performance for data-intensive applications.
Contribution
This work introduces a comprehensive architecture, instruction set, and software stack that bridges high-level Python tensor programming with low-level memristive PIM microarchitecture.
Findings
Demonstrates significant performance improvements over traditional architectures.
Simplifies PIM application development with a Python library.
Achieves versatility across various benchmarks.
Abstract
Digital processing-in-memory (PIM) architectures mitigate the memory wall problem by facilitating parallel bitwise operations directly within the memory. Recent works have demonstrated their algorithmic potential for accelerating data-intensive applications; however, there remains a significant gap in the programming model and microarchitectural design. This is further exacerbated by aspects unique to memristive PIM such as partitions and operations across both directions of the memory array. To address this gap, this paper provides an end-to-end architectural integration of digital memristive PIM from a high-level Python library for tensor operations (similar to NumPy and PyTorch) to the low-level microarchitectural design. We begin by proposing an efficient microarchitecture and instruction set architecture (ISA) that bridge the gap between the low-level control periphery and an…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAdvanced Memory and Neural Computing · Ferroelectric and Negative Capacitance Devices · Semiconductor materials and devices
