HackerPapers

arXiv:2012.03112cs.AR

A Modern Primer on Processing in Memory

Onur Mutlu, Saugata Ghose, Juan Gómez-Luna, Rachata Ausavarungnirun, Mohammad Sadrosadati, Geraldo F. Oliveira

Abstract

This paper discusses recent research that aims to enable computation close to data, an approach we broadly call processing-in-memory (PIM). PIM places computation mechanisms in or near where the data is stored (i.e., inside memory chips or modules, in the logic layer of 3D-stacked memory, in the memory controllers, in storage devices or chips), so that data movement between the computation units and memory/storage units is reduced or eliminated. While the general idea of PIM is not new, we discuss motivating trends in applications as well as memory circuits and technology that greatly exacerbate the need for enabling it in modern computing systems. We examine at least two promising new approaches to designing PIM systems to accelerate important data-intensive applications: (1) processing-using-memory, which exploits fundamental analog operational principles of memory chips to perform massively-parallel operations in-situ in memory, (2) processing-near-memory, which exploits different logic and memory integration technologies (e.g., 3D-stacked memory technology) to place computation logic close to memory circuitry, and thereby enable high-bandwidth, low-energy, and low-latency access to data. In both approaches, we describe and tackle relevant cross-layer research, design, and adoption challenges in devices, architecture, systems, compilers, programming models, and applications. Our focus is on the development of PIM designs that can be adopted in real computing platforms at low cost. We conclude by discussing work on solving key challenges to the practical adoption of PIM. We believe that the shift from a processor-centric to a memory-centric mindset (and infrastructure) remains the largest adoption challenge for PIM, which, once overcome, can unleash a fundamentally energy-efficient, high-performance, and sustainable new way of designing, using, and programming computing systems.

arXiv comments
arXiv admin note: substantial text overlap with arXiv:1903.03988
Journal reference
DOI
Subjects
cs.ARHardware Architecture cs.DCDistributed, Parallel, and Cluster Computing

On Hacker News

Linked by 3 identifiable commenters in 3 comments across 3 threads, from Feb 2021 to Aug 2026. Found in 3 HN submissions from Dec 2020 to Oct 2026. Open submission discussions.

Comments linking this paper, per year.

Discussed in comments3 threads

    • https://dblp.org/pid/m/OnurMutlu.html (search for "processing") also has a ton of great lectures on youtube, https://www.youtube.com/results?search_query=onur+mutlu+proc... 99 page primer on PIM https://arxiv.org/abs/2012.03112 https://en.wikipedia.org/wiki/Berkeley_IRAM_project

      genxyView on HNParent context

    • Onur Mutlu has a similar (definitely not same) idea of Processing in Memory. Basically the idea is to put some operations nearer to the data. Your idea is nearer to the register and his is in the memory controller nearer to memory. https://arxiv.org/pdf/2012.03112

      CalChrisView on HNParent context

    • Another recent primer on in-memory / near-memory computing in [1]. Upmem [2] is also selling memory with on-board compute. A space that is slowly hotting up! [1] O. Mutlu, S. Ghose, J. Gomez-Luna, R. Ausavarungnirun, A Modern Primer on Processing in Memory.…

      GregarianChildView on HNParent context

Submitted to Hacker News

Connected through shared HN threads, not inferred similarity or a recommendation.