Verhelst, Marian
Anda: Unlocking Efficient LLM Inference with a Variable-Length Grouped Activation Data Format
Fang, Chao, Shi, Man, Geens, Robin, Symons, Arne, Wang, Zhongfeng, Verhelst, Marian
The widely-used, weight-only quantized large language models (LLMs), which leverage low-bit integer (INT) weights and retain floating-point (FP) activations, reduce storage requirements while maintaining accuracy. However, this shifts the energy and latency bottlenecks towards the FP activations that are associated with costly memory accesses and computations. Existing LLM accelerators focus primarily on computation optimizations, overlooking the potential of jointly optimizing FP computations and data movement, particularly for the dominant FP-INT GeMM operations in LLM inference. To address these challenges, we investigate the sensitivity of activation precision across various LLM modules and its impact on overall model accuracy. Based on our findings, we first propose the Anda data type: an adaptive data format with group-shared exponent bits and dynamic mantissa bit allocation. Secondly, we develop an iterative post-training adaptive precision search algorithm that optimizes the bit-width for different LLM modules to balance model accuracy, energy efficiency, and inference speed. Lastly, a suite of hardware optimization techniques is proposed to maximally exploit the benefits of the Anda format. These include a bit-plane-based data organization scheme, Anda-enhanced processing units with bit-serial computation, and a runtime bit-plane Anda compressor to simultaneously optimize storage, computation, and memory footprints. Our evaluations on FPINT GeMM operations show that Anda achieves a 2.4x speedup, 4.0x area efficiency, and 3.1x energy efficiency improvement on average for popular LLMs including OPT, LLaMA, and LLaMA-2 series over the GPU-like FP-FP baseline. Anda demonstrates strong adaptability across various application scenarios, accuracy requirements, and system performance, enabling efficient LLM inference across a wide range of deployment scenarios.
OpenGeMM: A High-Utilization GeMM Accelerator Generator with Lightweight RISC-V Control and Tight Memory Coupling
Yi, Xiaoling, Antonio, Ryan, Dumoulin, Joren, Sun, Jiacong, Van Delm, Josse, Paim, Guilherme, Verhelst, Marian
Deep neural networks (DNNs) face significant challenges when deployed on resource-constrained extreme edge devices due to their computational and data-intensive nature. While standalone accelerators tailored for specific application scenarios suffer from inflexible control and limited programmability, generic hardware acceleration platforms coupled with RISC-V CPUs can enable high reusability and flexibility, yet typically at the expense of system level efficiency and low utilization. To fill this gap, we propose OpenGeMM, an open-source acceleration platform, jointly demonstrating high efficiency and utilization, as well as ease of configurability and programmability. OpenGeMM encompasses a parameterized Chisel-coded GeMM accelerator, a lightweight RISC-V processor, and a tightly coupled multi-banked scratchpad memory. The GeMM core utilization and system efficiency are boosted through three mechanisms: configuration pre-loading, input pre-fetching with output buffering, and programmable strided memory access. Experimental results show that OpenGeMM can consistently achieve hardware utilization ranging from 81.89% to 99.34% across diverse CNN and Transformer workloads. Compared to the SotA open-source Gemmini accelerator, OpenGeMM demonstrates a 3.58x to 16.40x speedup on normalized throughput across a wide variety ofGeMM workloads, while achieving 4.68 TOPS/W system efficiency.
MATCH: Model-Aware TVM-based Compilation for Heterogeneous Edge Devices
Hamdi, Mohamed Amine, Daghero, Francesco, Sarda, Giuseppe Maria, Van Delm, Josse, Symons, Arne, Benini, Luca, Verhelst, Marian, Pagliari, Daniele Jahier, Burrello, Alessio
Streamlining the deployment of Deep Neural Networks (DNNs) on heterogeneous edge platforms, coupling within the same micro-controller unit (MCU) instruction processors and hardware accelerators for tensor computations, is becoming one of the crucial challenges of the TinyML field. The best-performing DNN compilation toolchains are usually deeply customized for a single MCU family, and porting to a different heterogeneous MCU family implies labor-intensive re-development of almost the entire compiler. On the opposite side, retargetable toolchains, such as TVM, fail to exploit the capabilities of custom accelerators, resulting in the generation of general but unoptimized code. To overcome this duality, we introduce MATCH, a novel TVM-based DNN deployment framework designed for easy agile retargeting across different MCU processors and accelerators, thanks to a customizable model-based hardware abstraction. We show that a general and retargetable mapping framework enhanced with hardware cost models can compete with and even outperform custom toolchains on diverse targets while only needing the definition of an abstract hardware model and a SoC-specific API. We tested MATCH on two state-of-the-art heterogeneous MCUs, GAP9 and DIANA. On the four DNN models of the MLPerf Tiny suite MATCH reduces inference latency by up to 60.88 times on DIANA, compared to using the plain TVM, thanks to the exploitation of the on-board HW accelerator. Compared to HTVM, a fully customized toolchain for DIANA, we still reduce the latency by 16.94%. On GAP9, using the same benchmarks, we improve the latency by 2.15 times compared to the dedicated DORY compiler, thanks to our heterogeneous DNN mapping approach that synergically exploits the DNN accelerator and the eight-cores cluster available on board.
Precision-aware Latency and Energy Balancing on Multi-Accelerator Platforms for DNN Inference
Risso, Matteo, Burrello, Alessio, Sarda, Giuseppe Maria, Benini, Luca, Macii, Enrico, Poncino, Massimo, Verhelst, Marian, Pagliari, Daniele Jahier
The need to execute Deep Neural Networks (DNNs) at low latency and low power at the edge has spurred the development of new heterogeneous Systems-on-Chips (SoCs) encapsulating a diverse set of hardware accelerators. How to optimally map a DNN onto such multi-accelerator systems is an open problem. We propose ODiMO, a hardware-aware tool that performs a fine-grain mapping across different accelerators on-chip, splitting individual layers and executing them in parallel, to reduce inference energy consumption or latency, while taking into account each accelerator's quantization precision to maintain accuracy. Pareto-optimal networks in the accuracy vs. energy or latency space are pursued for three popular dataset/DNN pairs, and deployed on the DIANA heterogeneous ultra-low power edge AI SoC. We show that ODiMO reduces energy/latency by up to 33%/31% with limited accuracy drop (-0.53%/-0.32%) compared to manual heuristic mappings.
SALSA: Simulated Annealing based Loop-Ordering Scheduler for DNN Accelerators
Jung, Victor J. B., Symons, Arne, Mei, Linyan, Verhelst, Marian, Benini, Luca
To meet the growing need for computational power for DNNs, multiple specialized hardware architectures have been proposed. Each DNN layer should be mapped onto the hardware with the most efficient schedule, however, SotA schedulers struggle to consistently provide optimum schedules in a reasonable time across all DNN-HW combinations. This paper proposes SALSA, a fast dual-engine scheduler to generate optimal execution schedules for both even and uneven mapping. We introduce a new strategy, combining exhaustive search with simulated annealing to address the dynamic nature of the loop ordering design space size across layers. SALSA is extensively benchmarked against two SotA schedulers, LOMA and Timeloop on 5 different DNNs, on average SALSA finds schedules with 11.9% and 7.6% lower energy while speeding up the search by 1.7x and 24x compared to LOMA and Timeloop, respectively.
NeuroBench: Advancing Neuromorphic Computing through Collaborative, Fair and Representative Benchmarking
Yik, Jason, Ahmed, Soikat Hasan, Ahmed, Zergham, Anderson, Brian, Andreou, Andreas G., Bartolozzi, Chiara, Basu, Arindam, Blanken, Douwe den, Bogdan, Petrut, Bohte, Sander, Bouhadjar, Younes, Buckley, Sonia, Cauwenberghs, Gert, Corradi, Federico, de Croon, Guido, Danielescu, Andreea, Daram, Anurag, Davies, Mike, Demirag, Yigit, Eshraghian, Jason, Forest, Jeremy, Furber, Steve, Furlong, Michael, Gilra, Aditya, Indiveri, Giacomo, Joshi, Siddharth, Karia, Vedant, Khacef, Lyes, Knight, James C., Kriener, Laura, Kubendran, Rajkumar, Kudithipudi, Dhireesha, Lenz, Gregor, Manohar, Rajit, Mayr, Christian, Michmizos, Konstantinos, Muir, Dylan, Neftci, Emre, Nowotny, Thomas, Ottati, Fabrizio, Ozcelikkale, Ayca, Pacik-Nelson, Noah, Panda, Priyadarshini, Pao-Sheng, Sun, Payvand, Melika, Pehle, Christian, Petrovici, Mihai A., Posch, Christoph, Renner, Alpha, Sandamirskaya, Yulia, Schaefer, Clemens JS, van Schaik, André, Schemmel, Johannes, Schuman, Catherine, Seo, Jae-sun, Sheik, Sadique, Shrestha, Sumit Bam, Sifalakis, Manolis, Sironi, Amos, Stewart, Kenneth, Stewart, Terrence C., Stratmann, Philipp, Tang, Guangzhi, Timcheck, Jonathan, Verhelst, Marian, Vineyard, Craig M., Vogginger, Bernhard, Yousefzadeh, Amirreza, Zhou, Biyan, Zohora, Fatima Tuz, Frenkel, Charlotte, Reddi, Vijay Janapa
The field of neuromorphic computing holds great promise in terms of advancing computing efficiency and capabilities by following brain-inspired principles. However, the rich diversity of techniques employed in neuromorphic research has resulted in a lack of clear standards for benchmarking, hindering effective evaluation of the advantages and strengths of neuromorphic methods compared to traditional deep-learning-based methods. This paper presents a collaborative effort, bringing together members from academia and the industry, to define benchmarks for neuromorphic computing: NeuroBench. The goals of NeuroBench are to be a collaborative, fair, and representative benchmark suite developed by the community, for the community. In this paper, we discuss the challenges associated with benchmarking neuromorphic solutions, and outline the key features of NeuroBench. We believe that NeuroBench will be a significant step towards defining standards that can unify the goals of neuromorphic computing and drive its technological progress. Please visit neurobench.ai for the latest updates on the benchmark tasks and metrics.