Processing in Memory: DRAM gaat berekeningen uitvoeren

Auteur: Ben Houston Datum: 26 augustus 2026

Tijdens Hot Chips 2026 presenteerde Samsung een 16 GB LPDDR5X-geheugenpakket dat 614 GB/s aan interne bandbreedte levert aan de eigen rekeneenheden.

Ter vergelijking: 614 GB/s komt overeen met de geheugenbandbreedte van een topmodel Apple M5 Max over het gehele unified memory-systeem (de 40-core GPU-configuratie in de MacBook Pro van $ 3.499). Samsung claimt dit getal vanuit één enkel geheugenpakket, tegenover de 76,8 GB/s die via de externe pinnen naar buiten gaat. Tom's Hardware rapporteerde dit resulterende verschil van factor acht.

Deze verhouding van acht-op-één onderbouwt de noodzaak voor Processing in Memory (PIM). DRAM-banken leveren al het meeste van de bandbreedte; de externe pinnen kunnen deze simpelweg niet volledig ontsluiten.

Definities

  • Bank: DRAM bevat banken, onafhankelijke arrays die parallel kunnen werken. Een moderne LPDDR5X-die heeft er tientallen. Samen leveren ze een enorme interne doorvoer, maar ze delen een smalle externe interface.
  • GEMV vs. GEMM: Matrix-vector vermenigvuldiging versus matrix-matrix vermenigvuldiging. Autoregressieve decoding bij een batchgrootte van 1 gebruikt GEMV: de activaties van één token worden vermenigvuldigd met de gehele gewichtenmatrix. Prefill en batched serving gebruiken GEMM. PIM helpt het meest bij GEMV.
  • PIM (Processing-in-Memory): PIM-hardware plaatst rekeneenheden naast de banken, binnen de geheugendie, waar ze gebruik kunnen maken van de bandbreedte op bankniveau in plaats van de interfacebandbreedte.
  • Rekenintensiteit (Arithmetic intensity): Het aantal FLOPs dat wordt uitgevoerd per geladen byte. Een hoge intensiteit maakt een werklast compute-bound. Een lage intensiteit maakt het bandwidth-bound, waardoor matrix-engines onbenut blijven.

De flessenhals is de geheugenbandbreedte

Het genereren van één token vereist dat elke parameter uit het DRAM wordt gelezen, één keer wordt vermenigvuldigd en vervolgens wordt weggegooid. Elk token is afhankelijk van het voorgaande token, waardoor batch-1 decoding de gewichten niet kan hergebruiken over verschillende tokens. De rekenintensiteit bevindt zich hier op het absolute minimum.

Het eerstegraads model is: tokens/sec ≈ geheugenbandbreedteGB/s ÷ modelgrootteGB

Bij 614 GB/s tegenover een model van 20 GB ligt het theoretische maximum rond de 30 tokens per seconde. Het werkelijke aantal is lager omdat de KV-cache groeit met de context en concurreert om dezelfde bandbreedte. Tijdens de generatie wacht het grootste deel van de matrix-hardware waarvoor is betaald simpelweg op het DRAM.

De prestaties van Apple bij lokale inferentie draaien om geheugenbandbreedte. De M5 Pro verplaatst 307 GB/s, de M5 Max 460 of 614 GB/s, en de M5 Ultra bereikt 1,2 TB/s. Deze getallen voorspellen de tokens per seconde beter dan TFLOPs dat doen. Apple betaalt voor een bredere externe interface; het ontwerp van Samsung houdt de grootste transfers binnen het geheugenpakket.

Wat Samsung heeft gebouwd

Zestien PIM-blokken bevinden zich naast de DRAM-banken, met MAC-trees die parallel lopen en een ALU die floating-point en integer-typen afhandelt. Het pakket is een JEDEC-standaard 561-ball onderdeel dat 16 GB bevat over vier dies per rank. Samsung richt zich op servers, mobiele apparaten en clients met dezelfde footprint als ordinary LPDDR5X.

Het pakket verwerkt data in vier stappen, elk met consequenties voor de software:

  1. Activation write: Zestien WRPB-commando's broadcasten FP8-activatiedata van de host naar source register files over de banken.
  2. Weight load: PIMX_RD leest 32-byte gewichtselementen uit de DRAM-cellen, mapt deze over de MAC-trees en combineert de outputs in een vector register file.
  3. Vector store: PIMX_WR verplaatst partiële sommen terug naar de bank. De read-to-write ratio kan variëren in plaats van vast te staan op 1:1.
  4. Readback: De host schakelt over naar single-bank mode en voert tot 64 sequentiële leesacties uit om de 1-kbit vector register file leeg te maken.

De gewichten blijven binnen het pakket. Alleen de veel kleinere activaties passeren de bus, terwijl de host commando's naar de PIM-blokken stuurt. Samsung ondersteunt vijftien precisiecombinaties via MAC-precisievelden in een configuratieregister. SINT4-gewichten bereiken 2,4 TOPS; FP8 bereikt ongeveer 1,2 TFLOPS per pakket.

Compatibiliteit met conventionele geheugencontrollers

Samsung noemt zijn compatibiliteitsmechanisme Address Align Mode. Dit mapt DRAM-adressen naar MAC-instructies, zodat het onderdeel kan werken met een conventionele DRAM-controller. Het systeem schakelt tussen single-bank mode voor gewoon DRAM en multi-bank mode voor PIM via vooraf gedefinieerde rijen en PIM-registers. Samsung stelt dat deze aanpak sneller en betrouwbaarder schakelt tussen modi dan eerdere HBM-PIM-onderdelen.

Het vereisen dat elke SoC-leverancier een nieuwe geheugencontroller bouwt, had PIM beperkt tot onderzoeksprototypes. Address Align Mode voorkomt dat, waardoor software-integratie nu het grootste probleem is.

Het gemeten resultaat

Samsung heeft echte siliconen gevalideerd op zijn edge AI-accelerator SoC. Er werd een vergelijking gemaakt tussen LPDDR5X en LPDDR5X-PIM bij het draaien van Llama 3.1 8B met een context van 320 tokens, gebruikmakend van SINT8-activaties, SINT4-gewichten en SINT32-output.

MetriekLPDDR5XLPDDR5X-PIMDelta
Looptijd12,3 s5,4 s2,28x
Doorvoer27 tok/s81,3 tok/s3,01x

Deze benchmark van de leverancier beslaat één model, één korte context, één accelerator en integer-quantisatie over de hele linie. Het bewijst dat de architectuur op silicon werkt, maar voorspelt de prestaties niet voor elke workload. De context van 320 tokens minimaliseert in het bijzonder het KV-cache probleem. Samsung heeft de prijs van het pakket niet bekendgemaakt, dus het kostenvoordeel ten opzichte van een bredere geheugeninterface is momenteel een claim en geen gemeten resultaat.

Waarom geheugenleveranciers dit belangrijk vinden

Samsung begon zijn presentatie met een slide over kosten. De uitgaven aan geheugen als onderdeel van AI-chips groeiden van 52% in Q1 2024 naar 63% in Q4 2025, waarbij HBM het grootste deel vormt.

LPDDR5X-PIM biedt klanten een route naar HBM-klasse inferentiebandbreedte zonder de prijs, het stroomverbruik of de complexiteit van HBM-verpakkingen. Samsung volgt dit idee al sinds het Aquabolt-XL HBM2-PIM proof-of-concept in 2021. LPDDR5X-PIM is het eerste LPDDR-gebaseerde PIM-ontwerp dat de productiefase bereikt.

Het softwareprobleem

Er bestaat geen PIM-backend in llama.cpp, vLLM of andere mainstream runtimes. Samsung biedt een simulator, een datasheet op aanvraag en een SDK met referentietools. Er staan drie obstakels tussen deze vendor-stack en een --pim vlag.

1. K-quants mappen niet op de hardware

llama.cpp haalt veel van zijn kwaliteit-per-bit voordeel uit GGUF k-quants zoals Q4KM. Deze formaten gebruiken block-wise quantisatie met per-block scales en superblock scales. CPU's en GPU's kunnen de weinige dequantisatie-operaties per block uitvoeren op nabijgelegen general-purpose ALU's.

Een DRAM-die heeft weinig general-purpose logica. PIM MAC-units blijven klein omdat DRAM-productieprocessen zijn geoptimaliseerd voor opslagcapacitoren in plaats van logische transistoren; elke extra transistor vermindert de opslagdichtheid. Onderzoek naar in-memory activatie-quantisatie toonde aan dat mainstream quantisatieschema's extra schaling- en controlehardware nodig hebben bovenop de MAC-units. Eén geciteerd ontwerp had een area-overhead van ongeveer 126% voor FP16- en INT32-ondersteuning.

De minimale MAC-units van Samsung kunnen de k-quant schalingsoperaties niet uitvoeren. De vijftien precisiemodi gebruiken uniforme formaten, waaronder de SINT4- en SINT8-combinatie in de benchmark. Ze implementeren geen Q4KM. Bestaande GGUF-bestanden zouden opnieuw gequantiseerd moeten worden naar een PIM-native layout, en het is nog onbekend hoeveel van het kwaliteitsvoordeel van k-quants dan behouden blijft.

2. Fysieke geheugenindeling

mmap stelt de kernel in staat om pagina's over het fysieke DRAM te verspreiden. PIM vereist echter dat een gewichtenmatrix aaneengesloten is geplaatst en is uitgelijnd op de banken waarvan de MAC-trees de vermenigvuldiging uitvoeren. De PIMX_RD van Samsung leest 32-byte gewichtselementen uit cellen en mapt deze over MAC-trees, wat alleen werkt als de data zich op de verwachte locaties bevindt.

Een besturingssysteem zou een huge-page-backed, bank-aware allocator nodig hebben die is blootgesteld aan de user space. macOS, Linux en Windows bieden dit momenteel niet aan. De memory-mapped model loading van llama.cpp, een van de functies die het gebruiksvriendelijk maakt, is in conflict met deze vereiste.

3. Bank-level PIM bevoordeelt GEMV

Huidige near-bank ontwerpen, inclusief Samsung's HBM2-PIM, SK hynix's GDDR6-PIM en LPDDR5X-PIM, richten zich op GEMV. Dit past bij batch-size-1 decoding, waar de bandbreedte-muur het hardst toeslaat.

Moderne inferentie bevindt zich echter vaak tussen zuivere GEMV en dense GEMM. Batching combineert GEMV-operaties over queries tot GEMM. Grouped-query attention (GQA) voegt meerdere GEMV's samen tot narrow GEMM. Deze operaties verhogen de rekenintensiteit, maar blijven vaak te smal om een GPU volledig bezig te houden.

GQA komt voor in de meeste huidige modellen. Speculatieve decoding bevindt zich in hetzelfde middengebied, omdat het parallel verifiëren van draft-tokens GEMV omzet in GEMM. Onderzoek naar LPDDR-PIM speculatieve inferentie wees uit dat deze conversie de efficiëntie van GEMV-gefocuste PIM-ontwerpen vermindert. Lokale serving met kleine batches kampt met hetzelfde probleem.

Hoe zit het met multi-token predictie?

Multi-token prediction (MTP) heeft twee rollen. Een model kan het gebruiken als trainingsdoel (zoals DeepSeek-V3) en de extra predictiemodules tijdens normale inferentie weggooien. Een inference runtime kan deze modules echter ook gebruiken als speculatieve drafter: ze stellen meerdere toekomstige tokens voor, waarna het hoofdmodel de kandidaten parallel verifieert. Google rapporteert tot 3x versnelling met deze aanpak bij Gemma 4.

Die verificatiestap legt het zwakke punt in het ontwerp van Samsung bloot. Het controleren van meerdere kandidaat-tokens in één pass verandert de grote lineaire lagen van GEMV richting narrow GEMM. De in-bank MAC-units kunnen nog steeds కొంత memory-bound werk doen, maar ze kunnen hun volledige bank-level throughput niet gebruiken voor deze bredere operaties. Bovendien blokkeert het huidige ontwerp van Samsung de toegang van de NPU tot het DRAM terwijl PIM draait, wat voorkomt dat de twee processors één laag gelijktijdig verdelen.

MTP en PIM kunnen samenwerken in een heterogeen systeem. PAPI stelt een scheduler voor die de decoding-parallelle mate tijdens runtime meet en memory-bound kernels naar PIM stuurt, terwijl compute-bound kernels op een GPU blijven. Die onderzoeksarchitectuur gebruikt echter flexibelere hardware dan het LPDDR5X-PIM pakket van Samsung.

De versnellingen zouden niet simpelweg optellen, omdat beide technieken de kosten van het lezen van modelgewichten verminderen. MTP amortiseert één leesactie van gewichten over meerdere geaccepteerde tokens; PIM maakt elke resterende leesactie sneller. Op hardware die vandaag te koop is, kan MTP een grotere en goedkopere winst opleveren voor modellen met accurate draft heads. Het voordeel hangt af van de acceptatiegraad van drafts en de verificatiekosten, terwijl het voordeel van PIM afhangt van modelindeling, quantisatie en het fractie van het werk dat GEMV blijft.

Mixture-of-experts (MoE) modellen voegen ongelijkmatige geheugentoegang toe. Routing stuurt tokens naar een subset van experts. Als die experts een subset van banken bezetten, worden sommige banken "heet" terwijl andere onbenut blijven. Variabele workloads creëren bovendien veranderende GEMV-to-GEMM ratio's, wat de hardwarebenutting vermindert.

Computerarchitecten hebben verschillende oplossingen onderzocht:

  • Het werk splitsen: AttAcc, IANUS en NeuPIMs houden een NPU voor compute-intensive prefill GEMM en gebruiken PIM voor memory-intensive decode GEMV.
  • Compute verplaatsen naar een logic die: Duplex, gericht op MoE, GQA en continuous batching, plaatst 32 GEMM-modules op de HBM logic die. Een logic die kan zich echte GEMM-units veroorloven; de ruimte naast een DRAM-bank niet.
  • Heterogene compute binnen het geheugen bouwen: CENT verwijdert de GPU uit een CXL-systeem. HALO splitst werk per fase, waarbij compute-bound prefill wordt toegewezen aan compute-in-memory en memory-bound decode aan compute-in-DRAM.

Samsung koos voor near-bank compute om de HBM-kosten te verlagen met een JEDEC-standaard 561-ball pakket en een conventionele geheugencontroller. Dat pakket werkt alleen als de logica klein genoeg blijft om naast de banken te passen.

Het resulterende ontwerp richt zich op decode-side GEMV en kan worden geleverd in een bekend geheugenpakket, ten koste van GEMM-flexibiliteit. Het past bij batch-1 lokale inferentie op een dense model. MoE, speculatieve decoding en batched inferentie vereisen mogelijk een tweede generatie.

Overzicht huidige vs. PIM-aware workflow:

  • Vandaag: llama.cpp → NPU/GPU $\xleftrightarrow{76.8\text{ GB/s}}$ passief DRAM
  • PIM-aware: llama.cpp → conventionele DRAM controller $\xrightarrow{\text{commando's}}$ in-bank MACs @ 614 GB/s

Tijdlijn

JEDEC publiceerde de fundamentele LPDDR6-standaard (JESD209-6) in juli 2025. In april 2026 meldde JEDEC dat JC-42.6 bijna klaar was met een aparte LPDDR6 PIM-standaard, naast 512 GB dichtheden, een smallere x6 per-die interface en een SOCAMM2-modulestandaard. JEDEC heeft nog geen publicatiedatum aangekondigd. De roadmap van Samsung presenteert LPDDR5X-PIM als nu leverbaar en LPDDR6-PIM als bewegend richting de voltooide standaard.

Samsung heeft vandaag werkende siliconen, JEDEC heeft een onvoltooide standaard, en open runtimes missen nog de softwarestack.

Accelerator-software loopt vaak een jaar of meer achter op de hardware. PIM grijpt in op de page allocator van de kernel en de quantisatie-pipeline, wat de integratie moeilijker maakt dan het toevoegen van een andere compute backend. Adoptie hangt af van iemand die een bank-aware allocator en een re-quantisatiepad bouwt in een runtime die mensen daadwerkelijk gebruiken. Een kapitaalkrachtige leverancier kan dit werk financieren. De meest waarschijnlijke route is een door Samsung of SK hynix gesteunde runtime-fork die later upstream gaat, vergelijkbaar met vendor GPU-backends.

Waarom dit ertoe doet

Andere reacties op de "memory wall" kopen bandbreedte via bredere bussen, meer kanalen, HBM-stacks of grote unified-memory SoC's. Elke oplossing verhoogt het stroomverbruik, de kosten en de complexiteit van de verpakking.

PIM plaatst berekeningen naast de DRAM-banken, waardoor systeemontwerpers een andere manier hebben om de effectieve bandbreedte te verhogen zonder de geheugeninterface te verbreden.

De 3x vendor benchmark van Samsung is minder belangrijk dan de 614 GB/s binnen een 16 GB pakket. MTP kan voor sommige modellen sneller of goedkoper blijken, en toekomstige systemen kunnen beide technieken combineren. PIM is relevant omdat het bandbreedte ontsluit die huidige processors binnen de DRAM-die laten, waardoor hardware-ontwerpers een alternatief hebben wanneer softwaretechnieken niet langer schalen.