4090取代A100平台,仅比A100速度低18%的token生成及上交大推理引擎大热
来源:机器之心
时间:2023-12-21 16:06:16 267浏览 收藏
目前golang学习网上已经有很多关于科技周边的文章了,自己在初次阅读这些文章中,也见识到了很多学习思路;那么本文《4090取代A100平台,仅比A100速度低18%的token生成及上交大推理引擎大热》,也希望能帮助到大家,如果阅读完后真的对你学习科技周边有帮助,欢迎动动手指,评论留言并分享~
PowerInfer 提高了在消费级硬件上运行 AI 的效率

PowerInfer 与本地的先进的LLM推理框架llama.cpp相比,在单个RTX 4090(24G)上执行Falcon(ReLU)-40B-FP16模型,不仅实现了超过11倍的加速,而且还能保持模型的准确性
PowerInfer是一个专门用于本地部署LLM的高速推理引擎。与多专家系统(MoE)不同,PowerInfer巧妙地设计了一款GPU-CPU混合推理引擎,充分利用了LLM推理的高度局部性
将频繁激活的神经元(即热激活)预加载到GPU上以便快速访问,而不经常激活的神经元(即冷激活)则在CPU上进行计算。这是它的工作原理
这种方法能够显著降低GPU内存的需求和CPU与GPU之间的数据传输量
项目链接:https://github.com/SJTU-IPADS/PowerInfer
论文链接:https://ipads.se.sjtu.edu.cn/_media/publications/powerinfer-20231219.pdf
PowerInfer 可以在配备单个消费级 GPU 的 PC 上高速运行 LLM。现在用户可以将 PowerInfer 与 Llama 2 和 Faclon 40B 结合使用,对 Mistral-7B 的支持也即将推出。
在一天的时间里,PowerInfer就成功获得了2K个星标
在看到这项研究之后,网友们表示非常激动:现在单卡 4090 可以跑 175B 的大模型,不再只是一个梦想了
PowerInfer 架构
PowerInfer 设计的关键是利用 LLM 推理中固有的高度局部性,其特征是神经元激活中的幂律分布。这种分布表明,一小部分神经元(称为热神经元)跨输入一致激活,而大多数冷神经元则根据特定输入而变化。PowerInfer 利用这种机制设计了 GPU-CPU 混合推理引擎。
请参见下图7,展示了PowerInfer的架构概述,包括离线和在线组件。离线组件负责处理LLM的激活稀疏,同时区分热神经元和冷神经元。在在线阶段,推理引擎会将这两种类型的神经元加载到GPU和CPU中,并在运行时以低延迟的方式为LLM请求提供服务
图8展示了PowerInfer的工作原理,它协调GPU和CPU处理神经元之间的层次。PowerInfer通过离线数据对神经元进行分类,将活跃的神经元(如索引3、5、7)分配给GPU内存,而将其他神经元分配给CPU内存
一旦接收到输入,预测器将会识别当前层中可能会被激活的神经元。需要注意的是,通过离线统计分析识别的热激活神经元可能与实际运行时的激活行为不一致。例如,虽然神经元7被标记为热激活,但实际上并非如此。然后,CPU和GPU会处理那些已经激活的神经元,而忽略那些未被激活的神经元。GPU负责计算神经元3和5,而CPU处理神经元4。当神经元4的计算完成后,其输出将被发送到GPU进行结果集成
为了重新编写内容而不改变原意,需要将语言重新编写成中文。没有必要出现原始句子
该研究使用不同参数的 OPT 模型进行了为了重新编写内容而不改变原意,需要将语言重新编写成中文。没有必要出现原始句子,参数从 6.7B 到 175B 不等,还包括 Falcon (ReLU)-40B 和 LLaMA (ReGLU)-70B 模型。值得注意的是,175B 参数模型的大小与 GPT-3 模型相当。
本文还对PowerInfer进行了与llama.cpp的比较,llama.cpp是最先进的本地LLM推理框架。为了方便比较,本研究还扩展了llama.cpp以支持OPT模型
考虑到本文的重点是低延迟设置,因此评估指标采用了端到端生成速度,以每秒生成的 token 数量(tokens/s)进行量化
这项研究首先比较了PowerInfer和llama.cpp在批大小为1的情况下的端到端推理性能
在配备 NVIDIA RTX 4090 的 PC-High 上,图 10 展示了各种模型和输入输出配置的生成速度。平均而言,PowerInfer 实现了 8.32 tokens/s 的生成速度,最高可达 16.06 tokens/s,明显优于 llama.cpp,比 llama.cpp 提高了7.23倍,比Falcon-40B 提高了11.69倍
随着输出 token 数量的增加,PowerInfer 的性能优势变得更加明显,因为生成阶段在整体推理时间中扮演着更重要的角色。在这个阶段,CPU 和 GPU 上都会激活少量神经元,相比于llama.cpp,减少了不必要的计算。例如,在OPT-30B的情况下,每生成一个 token,只有大约20%的神经元被激活,其中大部分在GPU上处理,这是PowerInfer神经元感知推理的好处
在图11中显示,尽管在PC-Low上,PowerInfer仍然获得了相当大的性能增强,平均加速达到5.01倍,峰值加速达到7.06倍。然而,与PC-High相比,这些改进较小,主要是由于PC-Low的11GB GPU内存限制所致。这个限制会影响可以分配给GPU的神经元数量,尤其是对于具有大约30B参数或更多参数的模型,导致更多地依赖CPU来处理大量激活的神经元
图12展示了PowerInfer和llama.cpp之间的CPU和GPU之间的神经元负载分布。值得注意的是,在PC-High上,PowerInfer显著增加了GPU的神经元负载份额,从平均20%增加到了70%。这表明GPU处理了70%的激活神经元。然而,在模型的内存需求远远超过GPU容量的情况下,例如在11GB 2080Ti GPU上运行60GB模型,GPU的神经元负载会降低至42%。这种下降是由于GPU的内存有限,不足以容纳所有激活的神经元,因此需要CPU计算其中的一部分神经元
图 13 说明 PowerInfer 有效支持使用 INT4 量化压缩的 LLM。在 PC-High 上,PowerInfer 的平均响应速度为 13.20 tokens/s,峰值可达 29.08 tokens/s。与 llama.cpp 相比,平均加速 2.89 倍,最大加速 4.28 倍。在 PC-Low 上,平均加速为 5.01 倍,峰值为 8.00 倍。由于量化而减少的内存需求使 PowerInfer 能够更有效地管理更大的模型。例如,在 PC-High 上使用 OPT-175B 模型进行的为了重新编写内容而不改变原意,需要将语言重新编写成中文。没有必要出现原始句子中,PowerInfer 几乎达到每秒两个 token,超过 llama.cpp 2.66 倍。
最终,该研究还评估了PowerInfer在不同批大小下的端到端推理性能。如图14所示,当批大小小于32时,PowerInfer表现出显著的优势,与llama相比,性能平均提高了6.08倍。随着批大小的增加,PowerInfer提供的加速比会降低。然而,即使批大小设置为32,PowerInfer仍然保持了相当大的加速
参考链接:https://weibo.com/1727858283/NxZ0Ttdnz
请查看原论文以了解更多内容
终于介绍完啦!小伙伴们,这篇关于《4090取代A100平台,仅比A100速度低18%的token生成及上交大推理引擎大热》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布科技周边相关知识,快来关注吧!
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
420 收藏
-
293 收藏
-
416 收藏
-
112 收藏
-
426 收藏
-
332 收藏
-
289 收藏
-
102 收藏
-
318 收藏
-
370 收藏
-
346 收藏
-
487 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 508次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 497次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 484次学习