跳到主要内容
返回时间线
arXiv来源发表:

SpAx 用三档权重读取策略在卸载权重场景下把 LLM 解码加速最高 5.57 倍,WikiText-2 困惑度增幅不超过 10%

相关研究与后续进展

核心概要

该工作提出 SpAx,把激活稀疏中“是否读取某个权重”的二元选择改为三档处理——对激活最接近零的权重完全跳过、对较小幅值激活对应的权重读取压缩近似表示、对最大幅值激活对应的权重读取原始权重,从而在权重卸载到 CPU 内存或闪存时提升解码速度:卸载到 CPU 内存时 16 位权重平均加速 3.86 倍(最高 5.57 倍)、4 位权重平均 2.06 倍(最高 2.74 倍),卸载到闪存时分别为平均 3.31 倍(最高 4.81 倍)和平均 1.54 倍(最高 2.03 倍),WikiText-2 困惑度增幅最多 10%。

Source-provided article image: Activation Sparsity with Weight Approximation for Faster LLM Decoding on Offloaded Weights
Figure 1 ·

Figure 1: Llama-3.1-8B (BF16) with all weights offloaded, at different sparsity levels. (a), (b): Time per decoded token with the weights offloaded to CPU memory and to flash storage. (c): Perplexity increase relative to dense on the WikiText-2 test set. (See Section 6 for the experiment setup.)

arXiv

深度剖析

SpAx 将激活稀疏中的权重读取决策从二元扩展为三档:完全保留、用压缩权重表示近似、或完全省略。 此前的激活稀疏方法只在“读取”与“跳过”之间做二元取舍,而该工作引入中间档位,使小幅值激活对应的权重以压缩形式参与计算。 摘要给出该三档策略的明确描述,并说明其设计动机:小幅值激活会衰减近似权重引入的误差,而压缩权重表示需要传输的字节更少。

在权重卸载到 CPU 内存的设置下,SpAx 报告 16 位权重平均加速 3.86 倍(最高 5.57 倍)、4 位权重平均加速 2.06 倍(最高 2.74 倍)。 该结果针对的是消费级 GPU 显存不足以容纳模型权重、解码需反复从系统 RAM 传输权重的场景,直接改善了这一受限部署下的解码性能。 摘要报告了平均值与最高值两组数字,并给出对应的权重位宽条件。

在权重卸载到闪存的设置下,SpAx 报告 16 位权重平均加速 3.31 倍(最高 4.81 倍)、4 位权重平均加速 1.54 倍(最高 2.03 倍)。 闪存带宽低于系统 RAM,该结果说明三档策略在更窄的传输通道下同样带来加速。 摘要分别列出闪存场景下 16 位与 4 位权重的平均与最高加速比。

上述加速伴随的质量代价被量化为 WikiText-2 困惑度增幅最多 10%。 该工作把速度与质量放在同一权衡框架下报告,而非只给出加速数字。 摘要以 WikiText-2 困惑度作为质量指标,给出“at most 10%”的上界表述。

启示与展望

该工作面向权重无法全部驻留 GPU 显存、需要从系统 RAM 或闪存反复传输权重的解码场景,适用于消费级 GPU 部署。其收益以 WikiText-2 困惑度增幅不超过 10% 为质量边界,并分别在 16 位与 4 位权重、CPU 内存与闪存两种卸载目标下报告加速比。

摘要未说明所测试的模型规模与家族、基线方法的具体配置、压缩权重表示的形式与压缩率,也未给出困惑度增幅在 16 位与 4 位权重下各自的分布。WikiText-2 困惑度作为唯一报告的质量指标,其结论能否推广到下游任务尚待观察。此外,摘要未报告端到端延迟中非权重传输部分的占比。

来源