Giter Club home page Giter Club logo

pim_ndp_papers's Introduction

Process-in-memory (PIM), Near-data-processing (NDP)

This page contains a survey of Process-In-Memory (PIM) and Near-Data-Processing (NDP) papers. To distinguish between PIM and NDP (from technology perspective), we assume that PIM architecture either involves analog computation using memory array, or incorparating digital computing logic and memory components on the same die; whereas NDP architecture has seperate implementations of computing logic and memory components in different dies. Therefore in our categorization, recent 3D stacking based design belongs to NDP architecture.

From an architecture perspective, although some hardware uses memory technology to implement computation, they are still used as an accelerator for the host (for example, attached to PCIe as a slave device). These hardware designs assume separate physical address space from the host processor, and kenerl execution is similar to GPU (data copy-->kernel launch-->finish computation-->data copy). In contrast, some designs, though categorized as "NDP" in our survey, are truly "process-in-memory" from architectural standpoint. For example, "HMC + logic layer" can be used as memory device (read and written by the host) and a computation device (computation offloading). Also, some designs that have relatively large on-chip managed memory (For example, GPU has scratchpad memory, and DianNao has eDRAM) should be categorized as "memory-rich processor". These memory are local to the processor, and have no computing capability, so we do not include these papers in our survey.

We only include circuit, architecture and system level researches (The list is expected to grow as we add more new / dated papers).

I collect all related papers (not 100% matching) in PIM / NDP domain. All of the papers are arranged in chronological order in the following page:

The following image shows the trend of PIM / NDP publication count, the trend for commodity DRAM bandwidth, the trend for GDDR bandwidth, and the trend for HBM bandwidth. We can see that as the bandwidth is increasing in a slower pace these years, more and more researchers are exploring PIM / NDP technology to tackle the memory wall.

Publication trend in NDP / PIM v.s. memory bandwidth trend

The outline of the survey:

Application Scenario Marker

  • #f03c15 General Purpose
  • #c5f015 Machine Learning / Neural Network
  • #1589F0 Graph Processing
  • #af62ff Bioinformatics
  • #0abab5 Data Analytics
  • #ff66cc Associative Computing
  • #f4f442 Automata Computing
  • #ece5b8 Data Manipulation
  • #161616 Security
  • #003366 Others

Pioneering Papers

[IEEE Transactions on Computers 1970][A Logic-in-Memory Computer]
Arch: small processing elements are combined with small amounts of RAM to provide a distributed array of memories that perform computation
[IEEE Database 1981][The NON-VON Database Machine: An Overview]
Arch: small processing elements are combined with small amounts of RAM to provide a distributed array of memories that perform computation

Survey Papers

#f03c15[WoNDP 2013][A Processing-in-Memory Taxonomy and a Case for Studying Fixed-function PIM]
[Micro 2014][Near-Data Processing: Insights from a MICRO-46 Workshop]
[MemSys 2016][Data-Centric Computing Frontiers: A Survey On Processing-In-Memory]
[IEEE Solid-State Circuits Magazine 2016][Making the Case for Feature-Rich Memory Systems: The March Toward Specialized Systems]
#ece5b8[Advances in Computers 2017][Simple Operations in Memory to Reduce Data Movement]
#f03c15[Nature Electronics 2018][The future of electronics based on memristive systems]
#c5f015[arXiv 2018][Neuro-memristive circuits for edge computing: A review]
#161616[GLVLSI 2020][Security Challenges of Processing-In-Memory Systems]
#c5f015[GLVLSI 2020][A Review of In-Memory Computing Architectures for Machine Learning Applications]
#003366[GLVLSI 2020][Modeling and Benchmarking Computing-in-Memory for Design Space Exploration]

pim_ndp_papers's People

Contributors

liang-chang-uestc avatar miglopst avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.