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

用上这个工具包,大模型推理性能加速达40倍

0
分享至

作者:英特尔公司 沈海豪、罗屿、孟恒宇、董波、林俊
编者按:
只需不到9行代码,就能在CPU上实现出色的LLM推理性能。英特尔®Extension for Transformer创新工具包中的LLM Runtime为诸多模型显著降低时延,且首个token和下一个token的推理速度分别提升多达40倍和2.68倍,还能满足更多场景应用需求。

英特尔®Extension for Transformer是什么?

英特尔® Extension for Transformers[1]是英特尔推出的一个创新工具包,可基于英特尔®架构平台,尤其是第四代英特尔® 至强®可扩展处理器(代号Sapphire Rapids[2],SPR)显著加速基于Transformer的大语言模型(Large Language Model,LLM)。其主要特性包括:

  • 通过扩展Hugging Face transformers API[3]和利用英特尔®Neural Compressor[4],为用户提供无缝的模型压缩体验;
  • 提供采用低位量化内核(NeurIPS 2023:在CPU上实现高效LLM推理[5])的LLM推理运行时,支持Falcon、LLaMA、MPT、Llama2、 BLOOM、OPT、ChatGLM2、GPT-J-6B、Baichuan-13B-Base、Baichuan2-13B-Base、Qwen-7B、Qwen-14B和Dolly-v2-3B等常见的LLM[6];
  • 先进的压缩感知运行时[7](NeurIPS 2022:在CPU上实现快速蒸馏和QuaLA-MiniLM:量化长度自适应MiniLM;NeurIPS 2021:一次剪枝,一劳永逸:对预训练语言模型进行稀疏/剪枝)。

本文将重点介绍其中的LLM推理运行时(简称为“LLM运行时”),以及如何利用基于Transformer的API在英特尔® 至强®可扩展处理器上实现更高效的LLM推理和如何应对LLM在聊天场景中的应用难题。

LLM运行时(LLM Runtime)

英特尔®Extension for Transformers提供的LLM Runtime[8]是一种轻量级但高效的LLM推理运行时,其灵感源于GGML[9],且与llama.cpp[10]兼容,具有如下特性:

  • 内核已针对英特尔® 至强®CPU内置的多种AI加速技术(如 AMX、VNNI)以及AVX512F和AVX2指令集进行了优化;
  • 可提供更多量化选择,例如:不同的粒度(按通道或按组)、不同的组大小(如:32/128);
  • 拥有更优的KV缓存访问以及内存分配策略;
  • 具备张量并行化功能,可助力在多路系统中进行分布式推理。

LLM Runtime的简化架构图如下:



△图1.英特尔® Extension for Transformers的LLM Runtime简化架构图

只需不到9行代码,即可让您在CPU上实现更出色的LLM推理性能。用户可以轻松地启用与Transformer类似的API来进行量化和推理。只需将 ‘load_in_4bit’设为true,然后从HuggingFace URL或本地路径输入模型即可。

性能测试

经过持续努力,上述优化方案的INT4性能得到了显著提升。本文在搭载英特尔® 至强®铂金8480+的系统上与llama.cpp进行了性能比较;系统配置详情如下:@3.8GHz,56核/路,启用超线程,启用睿频,总内存 256 GB (16 x 16 GB DDR5 4800 MT/s [4800 MT/s]),BIOS 3A14.TEL2P1,微代码0x2b0001b0,CentOS Stream 8。

当输入大小为32、输出大小为32、beam为1时的推理性能测试结果,详见下表:



△表1.LLM Runtime与llama.cpp推理性能比较(输入大小=32,输出大小=32,beam=1)

输入大小为1024、输出大小为32、beam为1时的推理性能的测试结果,详见下表:



△表2.LLM Runtime与llama.cpp推理性能比较(输入大小=1024,输出大小=32,beam=1)

根据上表2可见:与同样运行在第四代英特尔® 至强®可扩展处理器上的llama.cpp相比,无论是首个token还是下一个token,LLM Runtime都能显著降低时延,且首个token和下一个token的推理速度分别提升多达 40 倍[a](Baichuan-13B,输入为1024)和2.68倍[b](MPT-7B,输入为1024)。llama.cpp的测试采用的是默认代码库[10]。

而综合表1和表2的测试结果,可得:与同样运行在第四代英特尔® 至强®可扩展处理器上的llama.cpp相比,LLM Runtime能显著提升诸多常见LLM的整体性能:在输入大小为1024时,实现3.58到21.5倍的提升;在输入大小为32时,实现1.76到3.43倍的提升[c]。

准确性测试

英特尔®Extension for Transformers可利用英特尔®Neural Compressor中的SignRound[11]、RTN和GPTQ[12]等量化方法,并使用lambada_openai、piqa、winogrande和hellaswag数据集验证了 INT4 推理准确性。下表是测试结果平均值与FP32准确性的比较。



△表3.INT4与FP32准确性对比

从上表3可以看出,多个模型基于LLM Runtime进行的INT4推理准确性损失微小,几乎可以忽略不记。我们验证了很多模型,但由于篇幅限制此处仅罗列了部分内容。如您欲了解更多信息或细节,请访问此链接:https://medium.com/@NeuralCompressor/llm-performance-of-intel-extension-for-transformers-f7d061556176。

更先进的功能:满足LLM更多场景应用需求

同时,LLM Runtime[8]还具备双路CPU的张量并行化功能,是较早具备此类功能的产品之一。未来,还会进一步支持双节点。

然而,LLM Runtime的优势不仅在于其更出色的性能和准确性,我们也投入了大量的精力来增强其在聊天应用场景中的功能,并且解决了LLM 在聊天场景中可能会遇到的以下应用难题:

  1. 对话不仅关乎LLM推理,对话历史也很有用。
  2. 输出长度有限:LLM模型预训练主要基于有限的序列长度。因此,当序列长度超出预训练时使用的注意力窗口大小时,其准确性便会降低。
  3. 效率低下:在解码阶段,基于Transformer的LLM会存储所有先前生成的token的键值状态(KV),从而导致内存使用过度,解码时延增加。

关于第一个问题,LLM Runtime的对话功能通过纳入更多对话历史数据以及生成更多输出加以解决,而llama.cpp目前尚未能很好地应对这一问题。

关于第二和第三个问题,我们将流式LLM(Steaming LLM)集成到英特尔®Extension for Transformers中,从而能显著优化内存使用并降低推理时延。

Streaming LLM

与传统KV缓存算法不同,我们的方法结合了注意力汇聚(Attention Sink)(4个初始token)以提升注意力计算的稳定性,并借助滚动KV缓存保留最新的token,这对语言建模至关重要。该设计具有强大的灵活性,可无缝集成到能够利用旋转位置编码RoPE和相对位置编码ALiBi的自回归语言模型中。



△图2.Steaming LLM的KV缓存(图片来源:通过注意力下沉实现高效流式语言模型[13])

此外,与llama.cpp不同,本优化方案还引入了“n_keep”和“n_discard”等参数来增强Streaming LLM策略。用户可使用前者来指定要在KV缓存中保留的token数量,并使用后者来确定在已生成的token中要舍弃的数量。为了更好地平衡性能和准确性,系统默认在KV缓存中舍弃一半的最新token。

同时,为进一步提高性能,我们还将Streaming LLM添加到了MHA融合模式中。如果模型是采用旋转位置编码(RoPE)来实现位置嵌入,那么只需针对现有的K-Cache应用“移位运算(shift operation)”,即可避免对先前生成的、未被舍弃的token进行重复计算。这一方法不仅充分利用了长文本生成时的完整上下文大小,还能在KV缓存上下文完全被填满前不产生额外开销。

“shift operation”依赖于旋转的交换性和关联性,或复数乘法。例如:如果某个token的K-张量初始放置位置为m并且旋转了m×θifor i ∈ [0,d/2),那么当它需要移动到m-1这个位置时,则可以旋转回到(-1)×θi for i ∈ [0,d/2)。这正是每次舍弃n_discard个token的缓存时发生的事情,而此时剩余的每个token都需要“移动”n_discard个位置。下图以“n_keep=4、n_ctx=16、n_discard=1”为例,展示了这一过程。



△图3.Ring-Buffer KV-Cache和Shift-RoPE工作原理

需要注意的是:融合注意力层无需了解上述过程。如果对K-cache和V-cache进行相同的洗牌,注意力层会输出几乎相同的结果(可能存在因浮点误差导致的微小差异)。

结论与展望

本文基于上述实践经验,提供了一个在英特尔® 至强®可扩展处理器上实现高效的低位(INT4)LLM推理的解决方案,并且在一系列常见LLM上验证了其通用性以及展现了其相对于其他基于CPU的开源解决方案的性能优势。未来,我们还将进一步提升CPU张量库和跨节点并行性能。

欢迎您试用英特尔®Extension for Transformers[1],并在英特尔®平台上更高效地运行LLM推理!也欢迎您向代码仓库(repository)提交修改请求 (pull request)、问题或疑问。期待您的反馈!

特别致谢

在此致谢为此篇文章做出贡献的英特尔公司人工智能资深经理张瀚文及工程师许震中、余振滔、刘振卫、丁艺、王哲、刘宇澄。

[a]根据表2 Baichuan-13B的首个token测试结果计算而得。
[b]根据表2 MPT-7B的下一个token测试结果计算而得。
[c]当输入大小为1024时,整体性能=首个token性能+1023下一个token性能;当输入大小为32时,整体性能=首个token性能+31下一个token性能。

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

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.

相关推荐
热点推荐
俄罗斯又挨一记大耳刮子!被吹上天的S-500也是假牙,没啥卵用

俄罗斯又挨一记大耳刮子!被吹上天的S-500也是假牙,没啥卵用

娱宙观
2024-04-25 19:54:08
中建七局西南公司、荣昌两名干部被查处

中建七局西南公司、荣昌两名干部被查处

中国基建报
2024-04-27 04:49:55
奋勇向前!傅崐萁一行昨夜抵达,一细节引注目!机场受访动人心弦

奋勇向前!傅崐萁一行昨夜抵达,一细节引注目!机场受访动人心弦

娱乐圈酸柠檬
2024-04-27 12:53:23
下月访华,普京亲口说出这一计划,连送给中国领导人的礼物都想好了

下月访华,普京亲口说出这一计划,连送给中国领导人的礼物都想好了

上观新闻
2024-04-26 20:10:54
爱喝茅台的“美女贪官”:年近半百仍沉迷男色,单笔受贿超百万

爱喝茅台的“美女贪官”:年近半百仍沉迷男色,单笔受贿超百万

天闻地知
2024-04-16 09:37:13
连保障房都扛不住了?!

连保障房都扛不住了?!

樱桃大房子
2024-04-26 22:22:23
中国犯难了 国际奥运委出绝招 凡去金砖国家运动会 不能到巴黎奥运会

中国犯难了 国际奥运委出绝招 凡去金砖国家运动会 不能到巴黎奥运会

小鬼头体育
2024-04-27 12:16:53
“炎症”拖成癌!哈佛推荐:5种果蔬打成汁,每天半杯,降低50%炎症反应

“炎症”拖成癌!哈佛推荐:5种果蔬打成汁,每天半杯,降低50%炎症反应

凤凰卫视
2024-04-26 16:33:12
她被称为中国黄金身材,巅峰期退圈结婚,丈夫身份特殊到不方便说

她被称为中国黄金身材,巅峰期退圈结婚,丈夫身份特殊到不方便说

简读视觉
2024-04-11 20:00:03
乌军在赫尔松取得重大进展,越来越多的俄罗斯人开始逃离克里米亚

乌军在赫尔松取得重大进展,越来越多的俄罗斯人开始逃离克里米亚

娱宙观
2024-04-25 14:22:57
江西省饶州监狱二十五监区副监区长、一级警长洪彬被查

江西省饶州监狱二十五监区副监区长、一级警长洪彬被查

北青网-北京青年报
2024-04-27 13:49:05
大侠纪云浩还不懂的道理:小人物奉命去干坏事,最忌讳加戏,加戏就是加码

大侠纪云浩还不懂的道理:小人物奉命去干坏事,最忌讳加戏,加戏就是加码

金水路7号站
2024-04-26 08:38:15
1976年,许世友在主席家乡喝酒,女儿上前耳语,将军听后脸色大变

1976年,许世友在主席家乡喝酒,女儿上前耳语,将军听后脸色大变

正史笔记
2024-04-26 17:58:09
日本排海她重拳出击骂日本太坏,质疑燃气她被重拳出击认错求放过

日本排海她重拳出击骂日本太坏,质疑燃气她被重拳出击认错求放过

历史总在押韵
2024-04-26 14:09:44
温玉高铁玉环段开始架梁

温玉高铁玉环段开始架梁

中国基建报
2024-04-27 17:59:57
越闹越大,器官移植马上就要合法化了,网友:大家以后看好孩子吧

越闹越大,器官移植马上就要合法化了,网友:大家以后看好孩子吧

手工制作阿歼
2024-04-27 17:38:22
发现元凶!中国空间站多次遭受撞击,神舟十八号携带装甲进行强化

发现元凶!中国空间站多次遭受撞击,神舟十八号携带装甲进行强化

搞笑的阿票
2024-04-27 15:38:27
炮灰出现!巨亏13万亿冻结高管工资,巨头彻底崩盘

炮灰出现!巨亏13万亿冻结高管工资,巨头彻底崩盘

今晚月色真美123
2024-04-27 12:33:35
1-0!雪藏贝林厄姆,19岁天才闪耀,皇马客场复仇,让巴萨绝望

1-0!雪藏贝林厄姆,19岁天才闪耀,皇马客场复仇,让巴萨绝望

我的护球最独特
2024-04-27 05:05:39
美国财政部长耶伦:中国不解决产能过剩问题,美国不排除任何选项

美国财政部长耶伦:中国不解决产能过剩问题,美国不排除任何选项

黄政邦爱音乐
2024-04-27 11:54:53
2024-04-27 19:54:44
量子位
量子位
追踪人工智能动态
9327文章数 175242关注度
往期回顾 全部

科技要闻

特斯拉这款车型刚上市几天,就上调价格

头条要闻

杨晓明涉嫌违纪违法 曾带队研发全球首款新冠灭活疫苗

头条要闻

杨晓明涉嫌违纪违法 曾带队研发全球首款新冠灭活疫苗

体育要闻

时代要落幕了?詹姆斯杜兰特陷0-3绝境

娱乐要闻

金靖回应不官宣恋情结婚的原因

财经要闻

北京房价回到2016年

汽车要闻

5月上市/智能化丰富 海狮 07EV正式到店

态度原创

家居
亲子
时尚
房产
公开课

家居要闻

光影之间 空间暖意打造生活律动

亲子要闻

小女孩过生日哭泣妈妈快速走过生日流程“乐不乐我不知道 主打一个快’

七八十岁男人,尽量别穿“背心+大裤衩”出门,显老油腻、很邋遢

房产要闻

海南最新房价出炉,三亚跌价最猛!

公开课

睡前进食会让你发胖吗?

无障碍浏览 进入关怀版