A Persistent-State Dataflow Accelerator for Memory-Bound Linear Attention Decode on FPGA

📄 arXiv: 2603.05931v1 📥 PDF

作者: Neelesh Gupta, Peter Wang, Rajgopal Kannan, Viktor K. Prasanna

分类: cs.AR, cs.LG

发布日期: 2026-03-06

备注: 6 pages, 6 figures


💡 一句话要点

针对内存受限的线性注意力解码,提出基于FPGA的持久状态数据流加速器

🎯 匹配领域: 支柱二:RL算法与架构 (RL & Architecture)

关键词: FPGA加速器 线性注意力 Gated DeltaNet 内存带宽优化 数据流架构

📋 核心要点

  1. 现有线性注意力模型在GPU上解码时受限于内存带宽,因为循环状态需要在HBM中频繁读写。
  2. 该论文提出一种基于FPGA的加速器,通过片上BRAM持久存储循环状态,将内存受限问题转化为计算受限。
  3. 实验结果表明,该加速器在速度和能效上均优于GPU,实现了4.5倍的速度提升和60倍的能效提升。

📝 摘要(中文)

Gated DeltaNet (GDN) 是一种线性注意力机制,它用固定大小的循环状态取代了不断增长的 KV 缓存。Qwen2-Next 等混合 LLM 使用 75% 的 GDN 层,并实现了与仅使用注意力机制的模型相比具有竞争力的准确性。然而,在 batch-1 的情况下,GDN 解码在 GPU 上是内存受限的,因为完整的循环状态必须在每个 token 中通过 HBM 进行往返。我们表明,这种瓶颈是架构上的,而不是算法上的,因为所有亚二次序列模型在解码时的算术强度都低于 1 FLOP/B,这使得它们比标准 Transformer 更受内存限制。我们提出了一种 FPGA 加速器,通过将完整的 2 MB 循环状态持久地保存在片上 BRAM 中来消除这种瓶颈,从而将工作负载从内存受限转换为计算受限。我们的设计将 GDN 循环融合到一个五阶段流水线数据通路中,该通路对每个 token 的每个状态矩阵仅执行一次读取和一次写入,利用分组值注意力实现配对头并行性,并通过数据流流水线重叠准备、计算和输出存储。我们使用 Vitis HLS 在 AMD Alveo U55C 上探索了四个设计点,每个迭代改变头部级别的并行度,从 2 到 16 个值头。我们最快的配置实现了每个 token 63 μs,比 NVIDIA H100 PCIe 上的 GPU 参考快 4.5 倍。后实现功耗分析报告片上功耗为 9.96 W,每个解码 token 的能效提高了 60 倍。

🔬 方法详解

问题定义:论文旨在解决线性注意力模型(如Gated DeltaNet)在GPU上进行解码时,由于需要频繁访问片外HBM来读写循环状态,导致的内存带宽瓶颈问题。现有方法无法有效利用片上资源,使得计算效率低下。

核心思路:论文的核心思路是将循环状态持久化地存储在FPGA的片上BRAM中,避免了频繁的片外内存访问。通过这种方式,将原本的内存受限问题转化为计算受限问题,从而充分利用FPGA的计算资源,提高解码速度和能效。

技术框架:该加速器的整体架构是一个五阶段流水线数据通路,用于执行GDN循环。主要包括:数据准备阶段、计算阶段和输出存储阶段。该设计利用数据流流水线,将准备、计算和输出存储重叠执行,提高了整体吞吐量。同时,利用分组值注意力(Grouped Value Attention)实现配对头并行性,进一步提升了计算效率。

关键创新:最重要的技术创新点在于将循环状态持久化存储在片上BRAM中,并设计了高效的数据流流水线,从而避免了频繁的片外内存访问。此外,利用分组值注意力实现配对头并行性,进一步提高了计算效率。

关键设计:该设计在AMD Alveo U55C FPGA上实现,使用Vitis HLS进行高层次综合。实验中探索了不同的头部并行度(2到16个值头),以优化性能。片上BRAM的大小需要能够容纳完整的循环状态(2MB)。功耗分析也是设计中的一个重要考虑因素,目标是实现更高的能效。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

实验结果表明,该FPGA加速器在AMD Alveo U55C上实现了显著的性能提升。最快的配置实现了每个token 63 μs的解码速度,比NVIDIA H100 PCIe上的GPU参考快4.5倍。功耗分析显示,片上功耗为9.96 W,每个解码token的能效提高了60倍。这些结果表明,该加速器在速度和能效方面均优于GPU。

🎯 应用场景

该研究成果可应用于各种需要低延迟和高能效的自然语言处理任务,例如实时语音识别、机器翻译和对话系统。特别是在资源受限的边缘设备上部署大型语言模型时,这种FPGA加速器具有重要的应用价值。未来,可以进一步探索将该加速器集成到更复杂的系统中,以实现更广泛的应用。

📄 摘要(原文)

Gated DeltaNet (GDN) is a linear attention mechanism that replaces the growing KV cache with a fixed-size recurrent state. Hybrid LLMs like Qwen3-Next use 75% GDN layers and achieve competitive accuracy to attention-only models. However, at batch-1, GDN decode is memory-bound on GPUs since the full recurrent state must be round-tripped through HBM every token. We show that this bottleneck is architectural, not algorithmic, as all subquadratic sequence models exhibit arithmetic intensities below 1 FLOP/B at decode time, making them more memory-bound than standard Transformers. We present an FPGA accelerator that eliminates this bottleneck by holding the full 2 MB recurrent state persistently in on-chip BRAM, converting the workload from memory-bound to compute-bound. Our design fuses the GDN recurrence into a five-phase pipelined datapath that performs only one read and one write pass over each state matrix per token, exploits Grouped Value Attention for paired-head parallelism, and overlaps preparation, computation, and output storage via dataflow pipelining. We explore four design points on an AMD Alveo U55C using Vitis HLS, varying head-level parallelism from 2 to 16 value-heads per iteration. Our fastest configuration achieves 63 $μ$s per token, 4.5$\times$ faster than the GPU reference on NVIDIA H100 PCIe. Post-implementation power analysis reports 9.96 W on-chip, yielding up to 60$\times$ greater energy efficiency per token decoded.