CiMLoop: A Flexible, Accurate, and Fast Compute-In-Memory Modeling Tool
arXiv:2405.07259 · doi:10.1109/ISPASS61541.2024.00012
Abstract
Compute-In-Memory (CiM) is a promising solution to accelerate Deep Neural Networks (DNNs) as it can avoid energy-intensive DNN weight movement and use memory arrays to perform low-energy, high-density computations. These benefits have inspired research across the CiM stack, but CiM research often focuses on only one level of the stack (i.e., devices, circuits, architecture, workload, or mapping) or only one design point (e.g., one fabricated chip). There is a need for a full-stack modeling tool to evaluate design decisions in the context of full systems (e.g., see how a circuit impacts system energy) and to perform rapid early-stage exploration of the CiM co-design space. To address this need, we propose CiMLoop: an open-source tool to model diverse CiM systems and explore decisions across the CiM stack. CiMLoop introduces (1) a flexible specification that lets users describe, model, and map workloads to both circuits and architecture, (2) an accurate energy model that captures the interaction between DNN operand values, hardware data representations, and analog/digital values propagated by circuits, and (3) a fast statistical model that can explore the design space orders-of-magnitude more quickly than other high-accuracy models. Using CiMLoop, researchers can evaluate design choices at different levels of the CiM stack, co-design across all levels, fairly compare different implementations, and rapidly explore the design space.
Available at https://github.com/mit-emze/cimloop. Published in ISPASS 2024
References in corpus (8)
- An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale
- A Microprocessor implemented in 65nm CMOS with Configurable and Bit-scalable Accelerator for Programmable In-memory Computing
- RAELLA: Reforming the Arithmetic for Efficient, Low-Resolution, and Low-Loss Analog PIM: No Retraining Required!
- Eva-CiM: A System-Level Performance and Energy Evaluation Framework for Computing-in-Memory Architectures
- MARS: Multi-macro Architecture SRAM CIM-Based Accelerator with Co-designed Compressed Neural Networks
- TeAAL: A Declarative Framework for Modeling Sparse Tensor Accelerators
- Architecture-Level Modeling of Photonic Deep Neural Network Accelerators
- Modeling Analog-Digital-Converter Energy and Area for Compute-In-Memory Accelerator Design