栏目分类
热点资讯
新闻动态
你的位置:kaiyun网页版 > 新闻动态 > kaiyun 4090成A100平替?token生成速率只比A100低18%,上交大推理引擎火了
kaiyun 4090成A100平替?token生成速率只比A100低18%,上交大推理引擎火了

发布日期:2024-01-21 08:58    点击次数:97

机器之心报说念

机器之心剪辑部

PowerInfer 使得在蓦地级硬件上运转 AI 愈加高效。

上海交大团队最新推出了超强 CPU/GPU LLM 高速推理引擎 PowerInfer。

这个推理引擎速率有多快?在单个 NVIDIA RTX 4090 GPU 上运转 LLM ,PowerInfer 的平均 token 生成速率为 13.20 tokens/s,峰值为 29.08 tokens/s,仅比顶级业绩器 A100 GPU 低 18%,可适用于多样 LLM。

不仅如斯,PowerInfer 与起始进的腹地LLM推理框架 llama.cpp 比较,在单个 RTX 4090 (24G) 上运转 Falcon (ReLU)-40B-FP16,已毕了 11 倍多的加快,还能保握模子的准确性。

具体来说,PowerInfer 是一个用于腹地部署 LLM 的高速推理引擎。与那些采纳多人人系统(MoE)不同的是,PowerInfer 通过时骗 LLM 推理中的高度局部性,奥密的联想了一款 GPU-CPU 羼杂推理引擎。

它的责任旨趣是这么的,将庸碌激活的神经元(即热激活,hot-activated)预加载到 GPU 上以便快速探问,而不常激活的神经元(冷激活,cold-activated)(占大多数)则在 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。

图 10 展示了在配备 NVIDIA RTX 4090 的 PC-High 上多样模子和输入输出竖立的生成速率。平均而言,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 仍然比 llama.cpp 取得了相配大的性能增强,平均加快为 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

了解更多本色,请稽查原论文。



关于协会 新闻动态 培训公告 授权培训基地 教师查询 联系我们