Pushing the Limits of BFP on Narrow Precision LLM Inference

📄 arXiv: 2502.00026v2 📥 PDF

作者: Hui Wang, Yuan Cheng, Xiaomeng Han, Zhengpeng Zhao, Dawei Yang, Zhe Jiang

分类: cs.AR, cs.AI

发布日期: 2025-01-21 (更新: 2025-02-07)


💡 一句话要点

提出DB-Attn框架,加速窄精度LLM推理中非线性Attention运算。

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 大语言模型 LLM推理 块浮点 BFP 非线性运算 Attention机制 硬件加速

📋 核心要点

  1. 现有LLM推理中,Attention等非线性运算因计算复杂度高,且采用低效浮点格式,成为性能瓶颈。
  2. 论文提出DB-Attn框架,通过DBFP格式和DH-LUT算法,优化非线性运算,提升硬件效率。
  3. 实验表明,DB-Attn在LLaMA的Softmax上实现了74%的GPU加速,并显著降低了硬件开销。

📝 摘要(中文)

大型语言模型(LLM)的巨大计算和内存需求阻碍了它们的部署。块浮点(BFP)已被证明在加速线性运算方面非常有效,而线性运算是LLM工作负载的基石。然而,随着序列长度的增长,诸如Attention之类的非线性运算由于其二次计算复杂度而日益成为性能瓶颈。这些非线性运算主要使用低效的浮点格式执行,这使得系统难以优化软件效率和硬件开销。在本文中,我们深入研究了将BFP应用于非线性运算的局限性和潜力。鉴于我们的发现,我们引入了一个硬件-软件协同设计框架(DB-Attn),包括:(i)DBFP,一种先进的BFP版本,通过针对不同数据的枢轴聚焦策略和针对灵活指数共享的自适应分组策略,克服了非线性运算的挑战。(ii)DH-LUT,一种专用的查找表算法,用于加速具有DBFP格式的非线性运算。(iii)实现了一个基于RTL级的DBFP引擎来支持DB-Attn,适用于FPGA和ASIC。结果表明,DB-Attn在精度损失可忽略不计的情况下提供了显着的性能改进,在LLaMA的Softmax上实现了74%的GPU加速,并且比SOTA设计实现了10倍的低开销性能提升。

🔬 方法详解

问题定义:现有的大型语言模型(LLM)推理过程中,Attention机制等非线性运算占据了相当大的计算比例,尤其是在长序列场景下。传统的浮点数格式在这些非线性运算中效率低下,导致硬件资源利用率低,推理速度慢,功耗高。因此,如何高效地执行这些非线性运算,成为提升LLM推理性能的关键挑战。

核心思路:论文的核心思路是利用块浮点(BFP)格式的优势,并针对非线性运算的特点进行优化。通过设计一种新的BFP变体(DBFP)和一种专用的查找表算法(DH-LUT),在保证精度的前提下,大幅降低非线性运算的计算复杂度和硬件开销。DBFP旨在通过枢轴聚焦策略处理多样化的数据,并采用自适应分组策略实现灵活的指数共享。

技术框架:DB-Attn框架是一个硬件-软件协同设计方案,主要包含三个组成部分:DBFP格式、DH-LUT算法和一个基于RTL级的DBFP引擎。首先,DBFP格式用于表示非线性运算中的数据,并提供高效的计算能力。其次,DH-LUT算法利用查找表加速非线性函数的计算。最后,基于RTL级的DBFP引擎实现了DB-Attn框架,并可部署在FPGA和ASIC等硬件平台上。

关键创新:论文的关键创新在于DBFP格式和DH-LUT算法的设计。DBFP格式通过枢轴聚焦策略和自适应分组策略,有效地处理了非线性运算中数据的多样性和指数共享问题。DH-LUT算法则利用查找表,避免了复杂的浮点数运算,从而加速了非线性函数的计算。

关键设计:DBFP格式的关键设计包括:(1) 枢轴聚焦策略,用于选择合适的指数基准,以减少数据溢出和精度损失;(2) 自适应分组策略,用于根据数据的分布情况,动态调整指数共享的范围,以提高硬件利用率。DH-LUT算法的关键设计在于查找表的大小和索引方式,需要在精度、存储空间和计算速度之间进行权衡。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

实验结果表明,DB-Attn框架在LLaMA模型的Softmax运算上实现了74%的GPU加速,并且与现有技术相比,实现了10倍的低开销性能提升。这些结果表明,DB-Attn框架能够显著提高LLM推理的效率,并降低硬件成本。

🎯 应用场景

该研究成果可广泛应用于各种需要加速LLM推理的场景,例如移动设备、边缘计算设备和数据中心。通过降低计算复杂度和硬件开销,DB-Attn框架可以使LLM在资源受限的环境中更高效地运行,从而推动LLM在自然语言处理、机器翻译、智能客服等领域的应用。

📄 摘要(原文)

The substantial computational and memory demands of Large Language Models (LLMs) hinder their deployment. Block Floating Point (BFP) has proven effective in accelerating linear operations, a cornerstone of LLM workloads. However, as sequence lengths grow, nonlinear operations, such as Attention, increasingly become performance bottlenecks due to their quadratic computational complexity. These nonlinear operations are predominantly executed using inefficient floating-point formats, which renders the system challenging to optimize software efficiency and hardware overhead. In this paper, we delve into the limitations and potential of applying BFP to nonlinear operations. Given our findings, we introduce a hardware-software co-design framework (DB-Attn), including: (i) DBFP, an advanced BFP version, overcomes nonlinear operation challenges with a pivot-focus strategy for diverse data and an adaptive grouping strategy for flexible exponent sharing. (ii) DH-LUT, a novel lookup table algorithm dedicated to accelerating nonlinear operations with DBFP format. (iii) An RTL-level DBFP-based engine is implemented to support DB-Attn, applicable to FPGA and ASIC. Results show that DB-Attn provides significant performance improvements with negligible accuracy loss, achieving 74% GPU speedup on Softmax of LLaMA and 10x low overhead performance improvement over SOTA designs.