网易首页 > 网易号 > 正文 申请入驻

70%大小,100%准确!完美压缩LLM性能0损失,推理速度最高飙升39倍

0
分享至

新智元报道

编辑:犀牛 好困

【新智元导读】LLM的规模爆炸式增长,传统量化技术虽能压缩模型,却以牺牲精度为代价。莱斯大学团队的最新研究DFloat11打破这一僵局:它将模型压缩30%且输出与原始模型逐位一致!更惊艳的是,通过针对GPU的定制化解压缩内核,DFloat11使推理吞吐量提升最高38.8倍。

人人都想有一个自己的DeepSeek,但并不是人人都有「一打」96GB显存的H20。

虽然量化可以极大地降低模型对于显存的需求,但它本质上是一种有损压缩技术。

换句话说就是,量化模型的输出分布不可避免地会受到影响,进而降低LLM的准确性和可靠性。

为此,来自莱斯大学等机构的研究人员提出了一种全新的无损压缩框架——动态长度浮点数(DFloat11),它能够将LLM的大小减少30%,同时确保输出结果与原始模型逐位相同。

论文地址:https://arxiv.org/abs/2504.11651

为了支持使用动态长度编码进行高效推理,团队专门开发了一个定制的GPU内核,用于实现快速的在线解压缩:

1. 将内存密集型的查找表 (LUT) 分解为更紧凑的LUT,使其能够完全放入GPU的SRAM中;

2. 一个双阶段内核,利用轻量级的辅助变量来协调线程的读写位置;

3. Transformer Block级的解压缩,从而最大限度地降低延迟。

在Llama-3.1、Qwen-2.5、Gemma-3等SOTA模型上的实验表明, DFloat11除了能有效压缩模型的大小之外,同时还能保持完全一致的输出结果。

与将模型的部分数据卸载到CPU的方案相比,DFloat11在Token生成任务中实现了1.9到38.8倍的吞吐量提升。

在GPU显存固定的情况下,DFloat11能够支持比未压缩模型长5.3到13.17倍的上下文长度。

特别值得一提的是,DFloat11成功地实现了Llama-3.1-405B(810GB)在单节点上(8块80GB GPU)的无损推理。

Llama-3.1-405B拥有4050亿参数,采用16位Brain Float(BFloat16)格式,需要约810GB内存才能实现完整推理,超过了典型GPU服务器的容量(如配备8×80GB GPU的DGX A100/H100)。

本文一作Tianyi Zhang,是莱斯大学计算机科学专业的博士生,之前在滑铁卢大学获得计算机科学学士学位。

为什么要对LLM进行无损压缩?


在目前的有损量化技术中,模型通常被压缩到更低的位宽度(如8位或4位)。

虽然部分基准测试表明,8位量化是一种相对「安全」的压缩方案,但在实际体验时终究不如无损的模型。

例如,LLM Arena上的人工评估显示,Llama-3.1-405B-Instruct及其8位版本(Llama-3.1-405B-Instruct-FP8)之间的性能存在显著下降,尤其是在编码和长查询任务中。

类似的,将DeepSeek-R1-Distill-Llama-70B从16位量化到8位会导致GPQA上的性能下降23.7%(从9.51%降至7.25%)。

此外,推理作为现代LLM的核心能力,似乎对压缩损失特别敏感。

一些基准测试表明,使用8位SmoothQuant(用于权重、注意力和KV缓存)量化的DeepSeek-R1-Distill-Qwen-1.5B,会在AIME、MATH-500、GPQA-Diamond和LiveCodeBench等数据集上的推理性能,平均下降9.09%(从48.82%降至44.29%)。

有损压缩降低质量,无损压缩缺乏效率

相比之下,无损压缩技术在有效减小大规模LLM大小的同时,能够保留其精确的原始权重,确保模型的输出分布与未压缩表示(例如BFloat16)的输出分布完全一致。

然而,现有的无损压缩方法主要侧重于提高LLM的存储效率,例如缩小模型检查点,或者优化诸如FPGA等专用硬件的性能。

这些方法虽然有利于训练过程中的高效检查点回滚,或者从Hugging Face等模型仓库加速下载,但其优势通常难以有效地扩展到基于GPU的LLM推理。

实验方法

为了推动LLM权重的无损压缩,团队分析了最新LLM权重中BFloat16各个组成部分(符号、指数和尾数)的可压缩性。

具体来说,团队使用香农熵来量化LLM线性投影矩阵中参数的信息量。香农熵H(·)定义如下:

其中X是一个离散随机变量,其所有可能取值的集合为χ,p:χ→[0,1]表示其概率质量函数。

如图1所示,符号和尾数部分的熵值与其对应的位宽接近,说明它们的可压缩空间不大。相比之下,指数部分的熵值明显较低,只有约2.6位,但其分配的位数为8位,这意味着无损压缩存在很大的机会。

无损LLM压缩框架,实现高效GPU推理

为了解决LLM权重在BFloat16表示中存在的巨大信息冗余问题,团队提出了一种利用熵编码来对浮点参数进行编码的无损压缩框架——DFloat。

首先,基于LLM线性投影矩阵中所有BFloat16权重的指数分布构建一个Huffman树。

然后,使Huffman编码压缩指数部分,同时保留原始的符号位和尾数。

指数被编码后,紧密地打包到EncodedExponent字节数组中,而符号位和尾数则保持未压缩状态,存储在另一个PackedSignMantissa字节数组中。

动态长度浮点数格式可以紧凑地表示浮点模型参数

使用紧凑LUT实现高效解码

由于Huffman编码可以通过机遇查找表(Lookup Table,LUT)的方法有效地解码,于是团队构建了一个大小为2^L的LUT,其中L是码本中任何Huffman编码的最大位长度。

为了进行解码,团队从编码的位流中读取接下来的L位,并将它们作为LUT的索引来获取下一个解码后的符号。

为了解码DFloat11格式的指数,限制每个模型的最大代码长度L为32位。

对于那些L大于32的模型,团队通过将最不常见的指数的频率降低到1并重新构建Huffman树来强制满足长度约束。

如此,便会在Huffman树的尾部产生一个更加平衡的结构,为最稀有的指数分配相同长度的代码,并将最大代码长度缩减到3位。

然而,当L=32时,直接使用查找表将需要232≈42.9亿个条目,这将消耗巨大的内存。

为了解决这个问题,团队提出将这个庞大的LUT分割成四个互不相交且节省内存的查找表——LUT1、LUT2、LUT3和LUT4。

这样一来,内存占用就可以完全放在GPU SRAM中,从而实现快速访问。

两阶段Kernel和轻量级辅助变量

为了能够对DFloat11格式中经过熵编码的指数进行大规模并行解码,团队为每个线程分配一段固定长度的、来自编码序列的字节来进行处理。

然而,这种方法会带来两个主要的挑战:

1. 由于Huffman编码的位宽是可变的,并且编码后的数据是被紧密地打包在一起的,因此每个线程开始解码的起始位位置并不明确。

2. 除了第一个线程之外,其他线程所要解码的元素的索引是未知的,这导致难以确定用于存储解码结果的正确输出位置。

为了解决第一个问题,团队使用一个间隙数组来确定每个线程的起始位位置。

这个间隙数组Gaps为每个线程包含一个条目,每个条目都指定了相对于该线程所分配的起始字节,第一个有效Huffman编码的位偏移量。由于最大代码长度为32位,因此每个偏移量的值都在[0,31]范围内。为了保证内存效率,团队使用5个位来编码每个条目。

为了解决第二个问题,最直接的方法是维护一个数组,用于存储每个线程所解码的第一个元素的输出位置。然而,这种方法会带来巨大的存储开销。

为了减少存储开销,团队只存储每个线程块中第一个元素的输出位置,而不是存储每个线程的输出位置。

为了能够使用块级的输出位置信息进行解码,团队采用了一种两阶段的Kernel设计。

在第一阶段,一个线程块内的所有线程并行地解码分配给它们的那部分编码序列,但是并不将任何输出结果写入到全局内存中。取而代之的是,每个线程会计算它将要解码的元素的数量。

完成这一步之后,团队同步同一个线程块内的所有线程,并通过计算前缀和来确定每个线程的输出位置,计算前缀和的起始位置是该线程块的已知输出位置。

在第二阶段,每个线程会重新解码相同的那部分编码序列,这一次会将解码后的结果写入到HBM中正确的输出位置。

为了避免在这两个阶段中重复访问HBM,团队将编码后的指数数据加载到SRAM中。

两阶段Kernel的伪代码

Transformer Block级解压缩

至此,就有了一套完整的方法,可以对经过熵编码的指数进行大规模并行解压缩。

LLM的权重以DFloat11格式存储,同时还包含轻量级的辅助数据:线程级的间隙偏移量以及块级的输出位置,这些数据用于确定每个线程的读取和写入位置。

在推理过程中,压缩后的权重数据和这些辅助变量都完全驻留在GPU上。

当需要使用某个权重矩阵进行矩阵乘法运算时,该矩阵会被动态地解压缩为原始的BFloat16格式。一旦矩阵乘法运算完成,这个BFloat16格式的矩阵会立即被丢弃,以节省GPU显存。

在实际应用中,由于单个权重矩阵的尺寸通常相对较小,因此单独解压缩一个权重矩阵往往无法充分利用GPU资源。

在DFloat11解压缩Kernel中,将每个线程处理的字节数设置为n=8,每个线程块中的线程数设置为T=256,线程块的数量设置为B=⌈|EncodedExponent|/(nT)⌉,其中|EncodedExponent|表示编码后的指数数据所占的总字节数。

随着DFloat11格式的权重数据尺寸的增加,会有更多的线程块被利用起来,从而可以提高整体的解压缩吞吐量。

图6展示了这种现象,它表明解压缩的吞吐量会随着矩阵尺寸的增加而显著提升。为了充分利用这一特性,研究团队建议将多个矩阵的解压缩操作进行批处理,以此来提高吞吐量并隐藏延迟。

更具体地说,可以将单个Transformer Block内的所有DFloat11格式的权重矩阵的解压缩操作进行批处理。

在Transformer Block中执行任何计算操作之前,团队首先解压缩与其相关联的所有权重数据。这种方法能够显著降低解压缩的延迟,并提高整体的推理效率。

图5展示了在不同的批处理大小下,使用DFloat11压缩的Llama-3.1-8B-Instruct模型的延迟细分情况。

实验结果

DF11将LLM压缩至70%大小

表2展示了DF11对多种最新LLM的压缩比率。

压缩的模型包括LLaMA3/3.1/3.3、Qwen2.5、QwQ、Mistral Nemo/Small/Codestral、Gemma2/3以及DeepSeek-R1-Distilled。

实验结果显示,DF11对所有模型的压缩比约为70%,相当于大约11位的有效位宽。

DF11压缩完全无损

研究团队通过一系列标准基准测试验证了DF11压缩的无损特性。

评估使用lm_evaluation_harness工具进行,报告了MMLU和TruthfulQA的准确率,以及WikiText和C4的词级困惑度。

如表3所示,压缩模型的准确率和困惑度与原始BF16模型完全一致。

为了进一步验证无损特性,他们将DF11解压后的BF16权重矩阵与表2中各模型的原始权重矩阵进行比较,确认两者在比特级上完全相同。

DF11在推理效率上超越CPU卸载

研究团队比较了DF11和BF16模型在不同硬件平台上的推理效率。

未压缩的BF16模型通常会超出单个GPU的显存限制,而无损压缩的DF11模型则不会超出。

对于BF16模型,团队将模型的大部分内容和计算保留在GPU上,同时将部分组件及其相关计算卸载到CPU上。

如图3所示,DF11模型始终优于采用CPU卸载的BF16模型,延迟降低了1.85至38.83倍或吞吐量更高。

DF11支持更长的生成长度

DF11压缩带来的显存节省不仅减少了推理所需的GPU数量,还支持更长的生成长度。

在推理过程中,KV缓存会随着解码token数量的增加而线性增长,很快成为GPU显存的瓶颈。

图4展示了在批大小为1时,DF11和BF16模型在推理过程中随着解码token数量增加的GPU显存消耗情况。

如图所示,DF11压缩显著延长了token生成长度,与BF16模型相比,在达到GPU显存限制前能解码5.33至13.17倍的token数量。

结论

在这项工作中,研究人员提出了动态长度浮点(DFloat)作为一种针对LLM权重的无损压缩数据格式。DFloat是目前唯一一种既能减少显存占用又兼容高效GPU推理的数据格式。

具体来说,他们使用11位的DFloat格式(DF11)评估了多个热门LLM,并为此格式开发了定制的GPU内核。

实验结果表明,基于DF11的压缩显著降低了服务LLM的硬件需求,而且在大多数实际应用场景下,它所增加的额外计算负担也是可以接受的。

参考资料:

https://arxiv.org/abs/2504.11651

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
沃尔沃改变纯电定价策略 旗舰SUV正式价较预售价大降8万

沃尔沃改变纯电定价策略 旗舰SUV正式价较预售价大降8万

经济观察报
2026-05-29 20:45:11
《家业》田荣华的三次出嫁:一次赢家产,一次得权利,一次丢性命

《家业》田荣华的三次出嫁:一次赢家产,一次得权利,一次丢性命

喜欢历史的阿繁
2026-05-30 17:15:47
85岁凤凰男:我退休金2万,还有2套房,唯一心愿但却想早点走

85岁凤凰男:我退休金2万,还有2套房,唯一心愿但却想早点走

多久情感
2026-05-29 19:13:05
贝巴:卡里克转正完全实至名归,期待下赛季的战术打法

贝巴:卡里克转正完全实至名归,期待下赛季的战术打法

懂球帝
2026-05-30 21:11:52
看完网友的三观炸裂经历,下巴都惊掉地上了!

看完网友的三观炸裂经历,下巴都惊掉地上了!

夜深爱杂谈
2026-05-29 07:53:20
小米宣布大降价,这玩意跌成白菜价了!

小米宣布大降价,这玩意跌成白菜价了!

XCiOS俱乐部
2026-05-28 15:08:32
新加坡香会取消了中国专场!李显龙没料到,这次中方不陪他们玩了

新加坡香会取消了中国专场!李显龙没料到,这次中方不陪他们玩了

泠泠说史
2026-05-30 20:59:36
网友花50万深圳开人宠烤肉餐厅,没生意后哭诉:这是我父母积蓄

网友花50万深圳开人宠烤肉餐厅,没生意后哭诉:这是我父母积蓄

映射生活的身影
2026-05-30 16:02:18
彻底不装了?全境调兵+转移12万民众:日本正在为"台湾有事"清空战场?

彻底不装了?全境调兵+转移12万民众:日本正在为"台湾有事"清空战场?

一刻talks丨硬科技趣思想
2026-05-29 21:09:33
43岁港星定居中山!称在内地买房像买菜便宜,四房两厅不到200万

43岁港星定居中山!称在内地买房像买菜便宜,四房两厅不到200万

小樾说历史
2026-05-28 17:06:10
油价大跌超500元/吨,今年“最大油价下跌”后,6月4日油价再大降

油价大跌超500元/吨,今年“最大油价下跌”后,6月4日油价再大降

油价早知道
2026-05-30 00:57:42
我和印度人还有加拿大人接触以后,可算是看清了印度人的上限

我和印度人还有加拿大人接触以后,可算是看清了印度人的上限

怪味历史连连看
2026-05-30 20:35:34
新一轮大范围强降雨6月3日登场,暴雨大暴雨再来,“龙舟水”重启

新一轮大范围强降雨6月3日登场,暴雨大暴雨再来,“龙舟水”重启

老牛讲
2026-05-30 13:41:17
中国防长未参会,美防长当众对华提一要求,全球看清美国最怕什么

中国防长未参会,美防长当众对华提一要求,全球看清美国最怕什么

健身狂人
2026-05-30 15:27:25
胡荷韬首发对阵山东,但国足和U23亚运队均未征召他

胡荷韬首发对阵山东,但国足和U23亚运队均未征召他

懂球帝
2026-05-30 18:44:23
女婿把我从上海赶回老家,刚下车收到女儿300万转账:妈别再忍了

女婿把我从上海赶回老家,刚下车收到女儿300万转账:妈别再忍了

千秋历史
2026-05-29 20:02:26
福建球王:再婚娶女篮球霸卞兰,35岁生下双胞胎女儿,现今如何?

福建球王:再婚娶女篮球霸卞兰,35岁生下双胞胎女儿,现今如何?

陈意小可爱
2026-05-30 20:24:06
为190元榴莲千里维权商家收到人身威胁言论,称已报警,并起诉“仅退款”买家索赔

为190元榴莲千里维权商家收到人身威胁言论,称已报警,并起诉“仅退款”买家索赔

红星新闻
2026-05-29 22:21:07
国家重仓广东,不只是大湾区,真正的王牌是这三样

国家重仓广东,不只是大湾区,真正的王牌是这三样

三农老历
2026-05-30 13:15:56
网友哭诉:比找不到工作更崩溃的是彻底不知道该干什么了?

网友哭诉:比找不到工作更崩溃的是彻底不知道该干什么了?

灯锦年
2026-05-28 16:36:03
2026-05-30 21:39:00
新智元 incentive-icons
新智元
AI产业主平台领航智能+时代
15343文章数 66893关注度
往期回顾 全部

科技要闻

车圈大佬发声:价格战远去,但竞争仍残酷

头条要闻

美防长香会谈中美关系 解放军专家学者代表团团长回应

头条要闻

美防长香会谈中美关系 解放军专家学者代表团团长回应

体育要闻

岁月不饶人!39岁德约鏖战近5小时拼到呕吐

娱乐要闻

张碧晨《歌手》 “活人微死” 自嘲

财经要闻

双汇管不住一头猪

汽车要闻

900V+3.2秒破百 领克10+&领克10上市16.99万元起

态度原创

游戏
数码
旅游
时尚
军事航空

欧冠之夜将至!PlayStation邀你一起见证新王诞生

数码要闻

酷睿Ultra 9+RTX 5090!宏碁旗舰游戏本发布:256GB内存、三Gen5槽

旅游要闻

潍坊寿光(羊口)·产业文旅主题消费季引燃激情夏日

2026夏天最新5款发型合集,每一款都超心动!

军事要闻

美防长参加"香会" 就美中关系最新表态

无障碍浏览 进入关怀版