Efficient Hardware Accelerator Based on Medium Granularity Dataflow for SpTRSV
Qian Chen, Xiaofeng Yang, Shengli Lu
TL;DR
This work addresses the bottleneck of sparse triangular solve (SpTRSV) by introducing a hardware accelerator that employs a medium granularity dataflow to balance spatial locality and parallelism. A custom compiler maps the sparse DAG to a vector of coarse nodes and fine-edge computations, augmented by a partial sum caching mechanism and an intra-node edges computation reordering algorithm to boost data reuse and reduce bank conflicts. Experimental results on 245 SuiteSparse benchmarks show substantial performance and energy efficiency gains over CPUs, GPUs, and the DPU-v2 accelerator, demonstrating the practicality of the approach for large-scale SpTRSV-like workloads. The combination of VLIW-inspired CUs, software-managed memory, and targeted dataflow optimizations suggests a scalable path for accelerating irregular sparse computations in scientific and engineering applications.
Abstract
Sparse triangular solve (SpTRSV) is widely used in various domains. Numerous studies have been conducted using CPUs, GPUs, and specific hardware accelerators, where dataflows can be categorized into coarse and fine granularity. Coarse dataflows offer good spatial locality but suffer from low parallelism, while fine dataflows provide high parallelism but disrupt the spatial structure, leading to increased nodes and poor data reuse. This paper proposes a novel hardware accelerator for SpTRSV or SpTRSV-like DAGs. The accelerator implements a medium granularity dataflow through hardware-software codesign and achieves both excellent spatial locality and high parallelism. Additionally, a partial sum caching mechanism is introduced to reduce the blocking frequency of processing elements (PEs), and a reordering algorithm of intra-node edges computation is developed to enhance data reuse. Experimental results on 245 benchmarks with node counts reaching up to 85,392 demonstrate that this work achieves average performance improvements of 7.0$\times$ (up to 27.8$\times$) over CPUs and 5.8$\times$ (up to 98.8$\times$) over GPUs. Compared to the state-of-the-art technique (DPU-v2), this work shows a 2.5$\times$ (up to 5.9$\times$) average performance improvement and 1.7$\times$ (up to 4.1$\times$) average energy efficiency enhancement.
