MIMDRAM: An End-to-End Processing-Using-DRAM System for High-Throughput, Energy-Efficient and Programmer-Transparent Multiple-Instruction Multiple-Data Processing
Geraldo F. Oliveira, Ataberk Olgun, Abdullah Giray, Ya\u{g}l{\i}k\c{c}{\i}, F. Nisa Bostanc{\i}, Juan G\'omez-Luna and, Saugata Ghose, Onur Mutlu

TL;DR
MIMDRAM is a novel DRAM-based processing-in-memory system that enables flexible, high-throughput, energy-efficient, and programmer-transparent multi-instruction execution by leveraging fine-grained DRAM access.
Contribution
It introduces a hardware/software co-designed system that uses fine-grained DRAM segments to enable MIMD execution, overcoming granularity and programmability limitations of prior PUD architectures.
Findings
34x performance improvement over state-of-the-art PUD
14.3x energy efficiency gain compared to PUD
Significant energy efficiency improvements over CPU and GPU
Abstract
Processing-using-DRAM (PUD) is a processing-in-memory (PIM) approach that uses a DRAM array's massive internal parallelism to execute very-wide data-parallel operations, in a single-instruction multiple-data (SIMD) fashion. However, DRAM rows' large and rigid granularity limit the effectiveness and applicability of PUD in three ways. First, since applications have varying degrees of SIMD parallelism, PUD execution often leads to underutilization, throughput loss, and energy waste. Second, most PUD architectures are limited to the execution of parallel map operations. Third, the need to feed the wide DRAM row with tens of thousands of data elements combined with the lack of adequate compiler support for PUD systems create a programmability barrier. Our goal is to design a flexible PUD system that overcomes the limitations caused by the large and rigid granularity of PUD. To this end,…
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.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Interconnection Networks and Systems · Error Correcting Code Techniques
