PIMSIM-NN: An ISA-based Simulation Framework for Processing-in-Memory Accelerators

Xinyu Wang,Xiaotian Sun,Yinhe Han,Xiaoming Chen
2024-02-28
Abstract:Processing-in-memory (PIM) has shown extraordinary potential in accelerating neural networks. To evaluate the performance of PIM accelerators, we present an ISA-based simulation framework including a dedicated ISA targeting neural networks running on PIM architectures, a compiler, and a cycleaccurate configurable simulator. Compared with prior works, this work decouples software algorithms and hardware architectures through the proposed ISA, providing a more convenient way to evaluate the effectiveness of software/hardware optimizations. The simulator adopts an event-driven simulation approach and has better support for hardware parallelism. The framework is open-sourced at
Hardware Architecture
What problem does this paper attempt to address?
The problem that this paper attempts to solve is how to effectively evaluate the performance of neural network accelerators in dealing with Processing - in - Memory (PIM) architectures. Specifically, the existing PIM simulators have deficiencies in supporting independent software and hardware design, which limits the optimization space. For example, MNSIM2.0 uses a fixed pipeline and a tightly - coupled software - hardware design, making the optimization space limited; and PUMA proposes a heterogeneous Instruction Set Architecture (ISA), but this design increases the difficulty of hardware implementation and software synchronization. To solve these problems, the author proposes an ISA - based simulation framework (PIMSIM - NN), which includes an ISA specifically for neural networks running on PIM architectures, a compiler, and a cycle - accurate configurable simulator. Through this framework, the effectiveness of software/hardware optimization can be more conveniently evaluated, and at the same time, the simulator adopts an event - driven simulation method to better support hardware parallelism. The main contributions of this framework are as follows: 1. **Decouple software algorithms and hardware architectures**: Through the proposed ISA, the decoupling of software algorithms and hardware architectures is achieved, providing a more convenient way to evaluate the effects of software/hardware optimization. 2. **Support hardware parallelism**: The simulator adopts an event - driven simulation method to better support hardware parallelism. 3. **Open - source code**: The source code of the framework has been made public, facilitating further research and improvement by the community. In conclusion, this paper aims to solve the deficiencies of existing PIM simulators in supporting independent software and hardware design by proposing a new ISA and simulation framework, thereby more effectively evaluating and optimizing the performance of PIM accelerators.