Program PIM units
with a standard toolchain

A comprehensive tool-chain with a C and RUST Compiler based on LLVM 12 and a set of efficient communication libraries for developing, debugging and building PIM programs.

Make sure to download the SDK, which contains a functional simulator for you start coding using Processing-In-Memory

Software Development Kit (SDK)


A set of programming interfaces to be used at run time by the high level application running on the main CPU to manage the PIM units

Open codes

Code examples are available on github, as well as the plug-in for CLION Integrated Development Environment. Click here to find out more about it.


The first step implies understanding how to leverage the massive parallel computing power and memory bandwidth. Use case examples available on demand can help preparing best suited algorithm strategies


The detailed online documentation includes tool-chain features, programming APIs and developer’s tools & environment. It can be found here

Platform evaluation

Order your UPMEM PIM DIMMs & PIM server

Each of our current DDR4 PIM DIMMs contains 128 DPUs clocked at 400MHz and totalizes 8GB of memory. Available qualified Intel Xeon platforms have up to 20 PIM DIMMs which translate into 2560 DPUs and 160GB of PIM memory. Get in touch with us to assemble the PIM configurations you need.

Access our PIM data-center

Experiment our real PIM hardware through our PIM data center based in Grenoble, France. Today it already supports various research & commercial teams around the world and allows accurate benchmarking of PIM use cases. If you would like to start a PIM project, we would be glad to facilitate your remote access to UPMEM’s hardware and SDK.