0

0

把注意力计算丢给CPU,大模型解码吞吐量提高1.76~4.99倍

爱谁谁

爱谁谁

发布时间:2024-12-31 12:24:02

|

750人浏览过

|

来源于php中文网

原创

利用cpu和gpu协同计算,显著提升大语言模型推理效率!来自cmu、华盛顿大学和meta ai的研究人员提出了一种名为magicpig的新方法,它巧妙地利用cpu上的局部敏感哈希(lsh)技术,有效缓解了gpu内存容量限制,从而大幅提升大语言模型(llm)的推理速度和准确性。

与仅依赖GPU的注意力机制相比,MagicPIG在解码吞吐量方面实现了1.76到4.99倍的提升,并在多个下游任务中取得了优于现有技术(例如Quest)的准确率。

这项研究的主要贡献在于:

  1. 突破性精度提升: 不同于其他稀疏注意力机制,MagicPIG基于采样和估计而非搜索,从而在保证推理质量的前提下,显著提高效率。

  2. 高效异构计算: 将解码阶段的注意力计算和哈希表操作卸载到CPU,充分利用异构计算架构,提高吞吐量并降低模型部署成本。

GPU内存瓶颈:KV缓存的挑战

在LLM推理中,KV缓存是主要的性能瓶颈。 KV缓存存储中间注意力键值对,避免重复计算。然而,其内存占用随着批量大小和序列长度线性增长,严重限制了GPU的批量处理能力,导致GPU利用率低下。例如,在NVIDIA A100-40GB GPU上处理Llama-3.1-8B模型(上下文长度128k)时,只能处理单个请求,且近一半的解码时间都耗费在KV缓存访问上。多样性生成和长链式推理等技术进一步加剧了这一问题。

TopK注意力机制的局限性

注意力机制本身具有稀疏性,因此动态稀疏注意力和TopK近似方法被广泛研究。但这些方法通常会造成精度下降。现有技术如Quest、H2O和Loki主要通过选择注意力得分最高的键值对来提高效率,但这种基于TopK的近似方法存在偏差,缺乏理论保障,尤其在高精度要求的任务(如聚合任务、常用词提取、高频词提取和逻辑推理)中表现不佳。

下图显示了TopK注意力机制的估计误差和性能下降:

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

把注意力计算丢给CPU,大模型解码吞吐量提高1.76~4.99倍

研究人员通过观察发现,TopK方法的失效与以下现象有关:

  1. 首个输入token的隐藏状态几乎不随输入变化。
  2. 键状态的中心方向在不同输入句子中保持稳定。
  3. 键状态的中心与汇聚点token的键状态几乎相反。

下图展示了这些观察结果:

把注意力计算丢给CPU,大模型解码吞吐量提高1.76~4.99倍

MagicPIG:基于采样的注意力估计

为了解决TopK方法的局限性,MagicPIG提出了一种基于采样的注意力估计方法。 该方法将问题视为偏差校正问题,利用局部敏感哈希(LSH)技术生成采样概率,并通过重要性采样来估计注意力输出。 与TopK方法相比,这种基于采样的方法显著降低了估计误差。

Catimind
Catimind

专为行业应用打造的AI生产力工具

下载

下图对比了基于采样的方法和TopK方法的估计误差:

把注意力计算丢给CPU,大模型解码吞吐量提高1.76~4.99倍

系统设计:CPU-GPU协同工作

MagicPIG将注意力计算和哈希表操作卸载到CPU,充分利用CPU的内存优势。 研究人员发现,通过采样技术降低内存访问量,可以有效弥补CPU内存带宽低于GPU的不足。 系统将LLM解码分为四个部分:参数计算(GPU)、注意力计算(CPU)、随机投影(GPU)和检索(CPU)。

下图展示了MagicPIG的系统架构:

把注意力计算丢给CPU,大模型解码吞吐量提高1.76~4.99倍

实验结果

实验结果表明,MagicPIG在长文本RULER任务中取得了比Quest更高的准确率,并且在推理速度和吞吐量方面有显著提升。

下图展示了MagicPIG在长文本RULER任务中的准确率:

把注意力计算丢给CPU,大模型解码吞吐量提高1.76~4.99倍

下图展示了MagicPIG的吞吐量提升:

把注意力计算丢给CPU,大模型解码吞吐量提高1.76~4.99倍

总结:MagicPIG 通过巧妙地结合采样技术和异构计算,为高效的LLM推理提供了一种新的思路,有望降低LLM的部署成本并推动其更广泛的应用。

相关专题

更多
登录token无效
登录token无效

登录token无效解决方法:1、检查token的有效期限,如果token已经过期,需要重新获取一个新的token;2、检查token的签名,如果签名不正确,需要重新获取一个新的token;3、检查密钥的正确性,如果密钥不正确,需要重新获取一个新的token;4、使用HTTPS协议传输token,建议使用HTTPS协议进行传输 ;5、使用双因素认证,双因素认证可以提高账户的安全性。

6029

2023.09.14

登录token无效怎么办
登录token无效怎么办

登录token无效的解决办法有检查Token是否过期、检查Token是否正确、检查Token是否被篡改、检查Token是否与用户匹配、清除缓存或Cookie、检查网络连接和服务器状态、重新登录或请求新的Token、联系技术支持或开发人员等。本专题为大家提供token相关的文章、下载、课程内容,供大家免费下载体验。

778

2023.09.14

token怎么获取
token怎么获取

获取token值的方法:1、小程序调用“wx.login()”获取 临时登录凭证code,并回传到开发者服务器;2、开发者服务器以code换取,用户唯一标识openid和会话密钥“session_key”。想了解更详细的内容,可以阅读本专题下面的文章。

1044

2023.12.21

token什么意思
token什么意思

token是一种用于表示用户权限、记录交易信息、支付虚拟货币的数字货币。可以用来在特定的网络上进行交易,用来购买或出售特定的虚拟货币,也可以用来支付特定的服务费用。想了解更多token什么意思的相关内容可以访问本专题下面的文章。

1064

2024.03.01

系统架构有哪些种类
系统架构有哪些种类

系统架构种类有单库单应用架构、内容分发架构、读写分离架构、微服务架构、多级缓存架构、分库分表架构等。想了解更多系统架构的相关内容,可以阅读本专题下面的文章。

186

2023.11.14

虚拟号码教程汇总
虚拟号码教程汇总

本专题整合了虚拟号码接收验证码相关教程,阅读下面的文章了解更多详细操作。

30

2025.12.25

错误代码dns_probe_possible
错误代码dns_probe_possible

本专题整合了电脑无法打开网页显示错误代码dns_probe_possible解决方法,阅读专题下面的文章了解更多处理方案。

20

2025.12.25

网页undefined啥意思
网页undefined啥意思

本专题整合了undefined相关内容,阅读下面的文章了解更多详细内容。后续继续更新。

37

2025.12.25

word转换成ppt教程大全
word转换成ppt教程大全

本专题整合了word转换成ppt教程,阅读专题下面的文章了解更多详细操作。

6

2025.12.25

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Go语言教程-全程干货无废话
Go语言教程-全程干货无废话

共100课时 | 9.3万人学习

弹指间学会CSS视频教程
弹指间学会CSS视频教程

共35课时 | 14.4万人学习

QueryList采集器开发手册
QueryList采集器开发手册

共24课时 | 15.6万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号