Processing-using-memory (PuM) techniques leverage the analog operation of memory cells to perform computation. Several recent works have demonstrated PuM techniques in off-the-shelf DRAM devices. Since DRAM is the dominant memory technology as main memory in current computing systems, these PuM techniques represent an opportunity for alleviating the data movement bottleneck at very low cost. However, system integration of PuM techniques imposes non-trivial challenges that are yet to be solved. Design space exploration of potential solutions to the PuM integration challenges requires appropriate tools to develop necessary hardware and software components. Unfortunately, current specialized DRAM-testing platforms, or system simulators do not provide the flexibility and/or the holistic system view that is necessary to deal with PuM integration challenges. We design and develop PiDRAM, the first flexible end-to-end framework that enables system integration studies and evaluation of real PuM techniques. PiDRAM provides software and hardware components to rapidly integrate PuM techniques across the whole system software and hardware stack (e.g., necessary modifications in the operating system, memory controller). We implement PiDRAM on an FPGA-based platform along with an open-source RISC-V system. Using PiDRAM, we implement and evaluate two state-of-the-art PuM techniques: in-DRAM (i) copy and initialization, (ii) true random number generation. Our results show that the in-memory copy and initialization techniques can improve the performance of bulk copy operations by 12.6x and bulk initialization operations by 14.6x on a real system. Implementing the true random number generator requires only 190 lines of Verilog and 74 lines of C code using PiDRAM's software and hardware components.
翻译:由于DRAM是当前计算系统的主要记忆力,因此这些PuM技术是减少数据移动瓶颈的一个机会,但是,PuM技术的系统整合带来了非三重挑战,尚待解决。对PuM整合挑战的潜在解决方案进行空间探索需要适当的工具来开发必要的硬件和软件组件。不幸的是,目前的专门DRAM测试平台或系统模拟器无法提供应对PuM整合挑战所必需的灵活性和/或整体系统视图。由于DRAM是当前计算机系统中的主要记忆力,因此DRAM技术是当前计算机系统中的主要记忆力技术,我们设计和开发PiDRAM,这是第一个灵活的端到端框架,能够进行系统整合研究和评价真实的PuM技术。PiDRAM技术的系统集成软件和硬件库迅速整合PuM技术(例如,操作系统中的必要修改,记忆控制器),我们用PiDRAM系统的初步操作线没有提供灵活性和/DRMAFAA系统的初步操作,我们需要在PIRA6的初始操作和初步版本上使用SRAM系统,需要使用一个真正的硬拷贝。