Processing In / Near Memory (PIM/PNM)
Compute-in-Memory (PIM) tackles the “memory wall” by moving simple compute units directly into DRAM, overcoming physical limits on off-chip bandwidth (PCB traces, package pins, thermal caps) and slashing data-movement energy. Samsung’s Aquabolt-XL is the first commercially fabricated HBM2-PIM device. It embeds a 16-lane FP16 SIMD array plus lightweight control and register files at each bank boundary of a standard eight-die HBM2 stack (16 pseudo-channels total), preserving JEDEC timing and drop-in form factor.
The performance of modern computing systems is bottlenecked by the off-chip communication bandwidth and its energy cost. Integrating the accelerators within DRAM (i.e., PIM) can mitigate these bottlenecks and additionally expose them to the higher internal bandwidth of DRAM. However, such an integration is challenging, as it should not disturb the highly-optimized DRAM core circuitry. To enable the integration, our work proposed an integration of a SIMD acceleration unit with each DRAM bank (Kim et al., 2022 ).
The physical memory capacity of servers is expected to increase drastically with deployment of the forthcoming non-volatile memory technologies. This is a welcomed improvement for emerging data-intensive applications. For such servers to be cost-effective, nonetheless, we must cost-effectively increase compute throughput and memory bandwidth commensurate with the increase in memory capacity without compromising application readiness. Tackling this challenge, we developed Memory Channel Network (MCN) architecture. Specifically, we first proposed an MCN DIMM, an extension of a buffered DIMM where a small but capable processor called MCN processor is integrated with a buffer device on the DIMM for near-memory processing. Second, we implemented device drivers to give the host and MCN processors in a server an illusion that they are independent heterogeneous nodes connected through an Ethernet link. These allow the host and MCN processors in a server to run a given data-intensive application together based on popular distributed computing frameworks such as MPI and Spark without any change in the host processor hardware and its application software, while offering the benefits of high-bandwidth and low-latency communications between the host and the MCN processors over memory channels. As such, MCN can serve as an application-transparent framework which can seamlessly unify near-memory processing within a server and distributed computing across such servers for data-intensive applications. Our evaluation shows that a server with 8 MCN DIMMs offers 4.56X higher throughput and consume 47.5% less energy than a cluster with 9 conventional nodes connected through Ethernet links, as it facilitates up to 8.17 times higher aggregate DRAM bandwidth utilization. Then, we demonstrated the feasibility of MCN with an IBM POWER8 system and an experimental buffered DIMM (Farmahini-Farahani et al., 2015 ).