TRINE:一种面向多模态AI的令牌感知、运行时自适应FPGA推理引擎
摘要
TRINE是一款单比特流FPGA加速器与编译器,用于端到端多模态推理,统一了多种层类型,并集成了运行时自适应计算模式、令牌剪枝和依赖感知的卸载功能,在20-21W功耗下相比RTX 4090实现最高22.57倍的延迟降低。
查看缓存全文
缓存时间: 2026/06/01 09:28
# TRINE:面向多模态AI的令牌感知、运行时自适应FPGA推理引擎 来源:https://arxiv.org/html/2603.22867 Hyunwoo Oh¹, Hanning Chen¹, Sanggeon Yun¹, Yang Ni², Suyeon Jang¹, Behnam Khaleghi³, Fei Wen⁴, and Mohsen Imani¹¹加州大学尔湾分校,²普渡大学西北分校,³高通,⁴三星hyunwooo, m\.imani@uci\.edu (https://arxiv.org/html/2603.22867v1/mailto:hyunwooo,%[email protected]) ###### 摘要。 融合ViT、CNN、GNN和Transformer NLP的多模态模型对嵌入式平台构成压力,原因是其计算/存储模式各异,且硬实时目标几乎不留余量。TRINE是一种单比特流FPGA加速器及编译器,无需重配置即可执行端到端多模态推理。各层被统一为DDMM/SDDMM/SpMM,并映射到一个模式可切换引擎上,该引擎在共享PE阵列内,运行时可在权重/输出驻留脉动、1×CS SIMD和可路由加法树(RADT)之间动态切换。一个宽度匹配的两阶段top-k单元支持流内令牌剪枝,而依赖感知层卸载(DALO)可在可重构处理单元之间重叠独立核函数,以维持高利用率。在Alveo U50和ZCU104上评估,TRINE相比RTX 4090实现最高22.57倍、相比Jetson Orin Nano实现最高6.86倍的延迟降低(功耗约20–21 W);单独令牌剪枝在ViT密集型流水线上带来最高7.8倍加速,DALO贡献最高79%的吞吐量提升。采用int8量化后,代表性任务精度下降<2.5%,在统一视觉、语言和图负载上实现了领先的延迟和能效——仅用单一比特流。 ## 1. 引言 多模态人工智能通过联合建模图像、文本和图,正在重塑计算机视觉、语言理解和关系推理。结合视觉Transformer(ViT)、图神经网络(GNN)、卷积神经网络(CNN)和基于Transformer的自然语言处理的系统,已能实现文本条件下的检测和视觉-语言定位(Kamath et al.,2021 (https://arxiv.org/html/2603.22867#bib.bib16); Cherti et al.,2023 (https://arxiv.org/html/2603.22867#bib.bib8)),以及图增强认知(Yun et al.,2024 (https://arxiv.org/html/2603.22867#bib.bib31))。然而,这些增益伴随着异构的计算和存储行为,使得嵌入式平台上的利用率、负载均衡和实时推理变得复杂。 ViT是一个特别的痛点:固定长度的令牌处理和注意力密集的模块大幅增加了前馈网络和注意力矩阵的成本,尤其是在令牌数量多、嵌入宽度中等的CV流水线中(Kamath et al.,2021 (https://arxiv.org/html/2603.22867#bib.bib16); Chang et al.,2023 (https://arxiv.org/html/2603.22867#bib.bib4); Chen et al.,2024b (https://arxiv.org/html/2603.22867#bib.bib6))。令牌剪枝方法通过在推理时丢弃低重要性令牌来降低这一成本(Tang et al.,2022 (https://arxiv.org/html/2603.22867#bib.bib26); Fayyaz et al.,2022 (https://arxiv.org/html/2603.22867#bib.bib11); Rao et al.,2021 (https://arxiv.org/html/2603.22867#bib.bib23); Xu et al.,2022 (https://arxiv.org/html/2603.22867#bib.bib29); Kong et al.,2022 (https://arxiv.org/html/2603.22867#bib.bib18))。然而在GPU上,由此产生的不规则稀疏性往往会降低利用率,因此实测加速比低于理论潜力(Kong et al.,2022 (https://arxiv.org/html/2603.22867#bib.bib18); Dong et al.,2023 (https://arxiv.org/html/2603.22867#bib.bib9); You et al.,2023 (https://arxiv.org/html/2603.22867#bib.bib30))。先前的硬件工作加速了孤立的部分——例如仅ViT或仅NLP的剪枝——或针对一部分核函数,导致端到端多模态流水线仍未得到充分支持(Dong et al.,2023 (https://arxiv.org/html/2603.22867#bib.bib9); You et al.,2023 (https://arxiv.org/html/2603.22867#bib.bib30); Parikh et al.,2024 (https://arxiv.org/html/2603.22867#bib.bib21); Lu et al.,2021 (https://arxiv.org/html/2603.22867#bib.bib20); Wang et al.,2021 (https://arxiv.org/html/2603.22867#bib.bib27))。 FPGA天生适合这种异构性,但频繁的比特流交换会引入高昂的重配置延迟,并使部署复杂化(AMD,2024 (https://arxiv.org/html/2603.22867#bib.bib2))。虽然一些设计支持多种工作负载(Zhang et al.,2024a (https://arxiv.org/html/2603.22867#bib.bib32),b (https://arxiv.org/html/2603.22867#bib.bib33)),但能在运行时适应多模态AI全部多样性的统一解决方案仍然缺失。此外,复制独立的密集和稀疏引擎会占用面积,并复杂化时序收敛,通常压低最大时钟频率。目前缺少一种单一比特流,能够(i)端到端执行ViT/CNN/GNN/NLP,(ii)拥抱动态令牌稀疏性,(iii)在不重配置的情况下维持高利用率。 本文的观点是:只要硬件能通过可切换互连和逐PE操作模式在运行时改变数据流,多模态层就可以表达为三种矩阵核函数——稠密-稠密(DDMM)、采样稠密-稠密(SDDMM)和稀疏(SpMM)。这种抽象让单一PE阵列能够通过运行时切换互连和逐PE操作来服务所有核函数,而无需实例化重复的数据通路。因此,我们提出TRINE——一种基于FPGA的加速器和编译器,将DDMM/SDDMM/SpMM映射到共享数据通路上,配备一个模式可切换引擎,能够执行权重/输出驻留脉动、1×CS SIMD,以及用于高度稀疏归约的可路由加法树(RADT)。一个宽度匹配的两阶段top-k单元在流内执行令牌剪枝,使得注意力分数在产生时即被过滤,避免了大型全局排序器和片外旁路。在引擎之上,依赖感知层卸载(DALO)跨多个可重构处理单元重叠独立核函数。RADT和DALO在互补层面发挥作用——RADT处理核内稀疏性和归约,DALO暴露核间并发——使得在单一比特流内实现运行时自适应,而不牺牲效率。 - •TRINE将ViT/CNN/GNN/NLP层统一为DDMM/SDDMM/SpMM,并在一个比特流上端到端执行,无需重配置。 - •一个共享PE阵列通过细粒度路由在脉动(WS/OS)、1×CS SIMD和RADT之间切换,匹配核函数结构和稀疏性,无需重复引擎。 - •流内top-k剪枝与RPU级调度相结合:与阵列宽度匹配的排序器在飞行中对令牌进行剪枝,DALO重叠独立核函数以提高多RPU架构上的利用率。 我们在Xilinx Alveo U50和ZCU104上评估了TRINE。在TinyCLIP(Wu et al.,2023 (https://arxiv.org/html/2603.22867#bib.bib28))、MDETR(Kamath et al.,2021 (https://arxiv.org/html/2603.22867#bib.bib16))和MissionGNN(Yun et al.,2024 (https://arxiv.org/html/2603.22867#bib.bib31))工作负载上,TRINE相比RTX 4090实现了最高22.57倍、相比Jetson Orin Nano实现了最高6.86倍的延迟降低,功耗约20–21 W;单独剪枝在ViT密集型情况下带来最高7.8倍加速,DALO将吞吐量提升了79%。据我们所知,这是首个在单一比特流内为视觉、语言和图工作负载提供领先延迟和能效的工作。 ## 2. 相关工作与动机 ### 2.1. 多模态AI模型 多模态系统结合ViT、CNN、GNN和Transformer NLP来对齐和推理图像、文本和图。MDETR融合CNN/ViT与语言用于文本条件检测(Kamath et al.,2021 (https://arxiv.org/html/2603.22867#bib.bib16));CLIP/TinyCLIP学习视觉-语言嵌入用于零样本任务(Radford et al.,2021 (https://arxiv.org/html/2603.22867#bib.bib22); Cherti et al.,2023 (https://arxiv.org/html/2603.22867#bib.bib8); Wu et al.,2023 (https://arxiv.org/html/2603.22867#bib.bib28));ImageBind扩展至更多模态(Girdhar et al.,2023 (https://arxiv.org/html/2603.22867#bib.bib13))。在图方面,MissionGNN将视觉证据转换为知识图,由GNN处理(Yun et al.,2024 (https://arxiv.org/html/2603.22867#bib.bib31));ML-CGN混合CNN和GNN用于场景/关系理解(Chen et al.,2019 (https://arxiv.org/html/2603.22867#bib.bib7));TaskCLIP针对细粒度分割(Chen et al.,2024a (https://arxiv.org/html/2603.22867#bib.bib5))。尽管取得了进展,NLP/GNN/CNN/ViT之间的工作负载异构性使得高效加速复杂化。 ### 2.2. ViT的令牌剪枝 ViT的成本随令牌和注意力规模增加。动态剪枝通过top-k选择仅保留信息量最大的令牌(Rao et al.,2021 (https://arxiv.org/html/2603.22867#bib.bib23); Xu et al.,2022 (https://arxiv.org/html/2603.22867#bib.bib29)),但在CPU/GPU上,由此产生的不规则稀疏性限制了实际加速比。SPViT用Gumbel-Softmax替换top-k用于可微分选择(Kong et al.,2022 (https://arxiv.org/html/2603.22867#bib.bib18)),引入了对通用硬件也不友好的非线性核函数。这些趋势促使专门支持剪枝,以减少计算*并*保持利用率。 ### 2.3. 领域专用加速器 #### 2.3.1. 硬件剪枝 针对稀疏核函数(SpMM/SDDMM)和剪枝Transformer的加速器提高了吞吐量,但通常特定于模型或核函数(Gerogiannis et al.,2023 (https://arxiv.org/html/2603.22867#bib.bib12); Lu et al.,2021 (https://arxiv.org/html/2603.22867#bib.bib20))。令牌剪枝硬件确实存在——例如,基于阈值的NLP引擎(Wang et al.,2021 (https://arxiv.org/html/2603.22867#bib.bib27))、ViT的编译时剪枝(You et al.,2023 (https://arxiv.org/html/2603.22867#bib.bib30))和运行时Gumbel-Softmax剪枝(Dong et al.,2023 (https://arxiv.org/html/2603.22867#bib.bib9))——然而每个都只针对一部分模型或固定稀疏模式,限制了通用性。 #### 2.3.2. 多模态感知加速器 涵盖多种模态的模式可切换FPGA设计已经出现:CNN+GNN(Zhang et al.,2024a (https://arxiv.org/html/2603.22867#bib.bib32))以及增加ViT支持的扩展(Zhang et al.,2024b (https://arxiv.org/html/2603.22867#bib.bib33))。然而,覆盖面仍然不完整(未包含全部四种模态),并且大多数缺乏硬件加速的*运行时*令牌剪枝,导致端到端多模态流水线优化不足。 ### 2.4. 动机 如Table 1 (https://arxiv.org/html/2603.22867#S2.T1)所总结,先前的工作要么局限于少数模态,要么忽略了ViT密集型流水线所必需的运行时令牌剪枝。我们的目标是构建一个单一比特流框架,覆盖ViT/GNN/CNN/NLP,并提供可扩展的硬件top-k剪枝,使得新兴的剪枝策略能够在统一的多模态图中实时执行。 Table 1. FPGA加速器与支持的工作负载、稀疏核函数及令牌剪枝能力对比。工作AI稀疏令牌工作负载核函数剪枝本文ViT+GNN+CNN+NLP是运行时(Zhang et al.,2024b (https://arxiv.org/html/2603.22867#bib.bib33))CNN+GNN或ViT是否(Zhang et al.,2024a (https://arxiv.org/html/2603.22867#bib.bib32))CNN+GNN否否(Dong et al.,2023 (https://arxiv.org/html/2603.22867#bib.bib9))ViT否运行时∗(You et al.,2023 (https://arxiv.org/html/2603.22867#bib.bib30))ViT否编译时∗(Wang et al.,2021 (https://arxiv.org/html/2603.22867#bib.bib27))NLP是编译时∗(Lu et al.,2021 (https://arxiv.org/html/2603.22867#bib.bib20))通用MM是否(Gerogiannis et al.,2023 (https://arxiv.org/html/2603.22867#bib.bib12))通用MM是否∗编译/运行时表示稀疏模式确定的时间。 参见说明Figure 1. TRINE概述和模式可切换引擎(MSE)。(a) 带有RPU网格和局部RPU间缓冲区的加速器,用于本地化流量并流水线化瓦片间交换。(b) 每个RPU集成了共享数据通路的MSE、宽度匹配的两阶段top-k、紧凑的非线性单元和轻量级馈送调度器。(c) 单个PE阵列通过小型互连多路复用器和逐PE操作控制分时共享四种数据流:(1) 用于密集DDMM的脉动(WS/OS);(2) 用于中等稀疏SDDMM/SpMM的1×CS SIMD;(3) 用于高度稀疏/不规则归约的RADT;(4) 用于逐元素操作的普通SIMD。选择策略(运行时):DDMM→WS/OS(小令牌/高权重重用用WS;宽特征图/多令牌用OS)。SDDMM/SpMM→当每行/列的活动操作数≲C_S且较均匀时用1×CS;当稀疏度增长或度数倾斜时切换到RADT。馈送调度提供脉动延迟插入和稀疏感知索引读取,无需主机端打包。 ## 3. 硬件架构 TRINE通过结合可重构处理单元(RPU)网格、一个在单个PE阵列上切换数据流的模式可切换计算引擎(MSE),以及一个流内、宽度匹配的top-k单元来实现运行时令牌剪枝,从而在单一比特流上统一ViT、GNN、NLP和CNN推理(Fig.1 (https://arxiv.org/html/2603.22867#S2.F1))。 ### 3.1. 系统概述 如Fig.1 (https://arxiv.org/html/2603.22867#S2.F1)(a)所示,一个r×c的RPU网格配备局部RPU间缓冲区,以最小化片外流量并实现瓦片间流水线交换。主机APU/CPU写入紧凑的控制块(模式、分块、路由掩码),并使用AXI DMA进行批量I/O。模式切换会排空流水线中的操作并更新几个寄存器;由于核函数运行数千个周期,墙钟开销可以忽略。这种控制与数据流的分离允许在运行时对每个核函数进行自适应,而无需任何比特流重配置。 ### 3.2. 模式可切换引擎(MSE) 在Fig.1 (https://arxiv.org/html/2603.22867#S2.F1)(b)的每个RPU内部,MSE是一个单一的PE阵列,通过小型互连多路复用器和逐PE操作控制分时共享多种数据流。每个PE提供西/北输入、一条部分和路径、一个用于重用的微型寄存器文件,以及一个三功能ALU(MAC/ADD/PASS)。一个多路复用器导向B流以实现输出或权重驻留波前;另一个选择PE操作(乘累加、用于RADT的归约,或直通)。轻量级的行/列广播和短跨行抽头使得SIMD和树形归约得以实现,而无需复制引擎或引入长全局连线。将稠密和稀疏数据流合并到一个阵列中,避免了第二个大型宏及其布线压力,这有助于时序收敛,并在启用剪枝时保持Fmax稳定。 四种执行模式总结于Fig.1 (https://arxiv.org/html/2603.22867#S2.F1)(c): - •脉动(WS/OS)。密集DDMM(卷积作为矩阵乘法、MLP、全注意力),在权重(WS,小令牌/大重用)和输出(OS,宽特征图/多令牌)之间平衡重用。 - •1×CS SIMD。宽度为C_S(*阵列列宽*)的单一活动行仅发出已调度的非零元;适用于中等稀疏度的SDDMM/SpMM或有限度数(GNN)。 - •RADT。相同的PE组成可编程多级归约树;活动乘积在出现处注入,并沿路由路径累加,在高或偏斜稀疏度下优选。 - •普通SIMD。逐元素工作,如偏置、激活和边函数。 模式选择使用核函数形状(N,M,K)、观测到的令牌/边稀疏度p和阵列宽度C_S:密集层映射到WS/OS;剪枝注意力
相似文章
TRAM:为低功耗 AI 加速器训练近似乘法器结构
本文介绍了 TRAM,一种联合优化近似乘法器结构和 AI 模型参数的方法,旨在降低 AI 加速器的功耗,同时保持模型精度。
介绍 Triton:神经网络开源 GPU 编程
# 介绍 Triton:神经网络开源 GPU 编程 来源:[https://openai.com/index/triton/](https://openai.com/index/triton/)  我们发布了 Triton 1.0,这是一种开源的类 Python 编程语言,使没有 CUDA 经验的研究人员能够编写高效的 GPU 代码——在大多数情况下与专家能够生成的代码性能相当。
FlashTrie:一种用于生成式检索的GPU加速约束束搜索方法
FlashTrie提出了一种GPU加速的约束束搜索方法用于生成式检索,利用简洁的trie布局和协作式CUDA内核来降低解码延迟,实现大规模实时服务,在商业搜索引擎中实现了高达24倍的加速和0.71%的收入提升。
开源三值LLM引擎:基于Rust/CUDA,用于消费级GPU上的模型量化、服务与训练,名为Tritium(Apache 2.0)
介绍Tritium,一个开源的Rust/CUDA引擎,用于在消费级GPU上对LLM进行三值(1.58位)量化、服务与训练。它声称在三值模型上推理速度比llama.cpp更快,并引入了一种名为SALT的新量化方法。
@TensordyneInc: 没人能比我们从一兆瓦中获得更多的快速令牌。没人。· 比特精确的对数数学已锁定。· 芯片已完成tape-out…
Tensordyne宣布其AI推理芯片在TSMC 3nm工艺上完成tape-out,并与HPE Juniper fabric进行系统启动,同时发布了一份关于优化AI推理效率的白皮书。