推理优化(1)Kd

news/2025/1/11 9:59:31/文章来源:https://www.cnblogs.com/westworldss/p/18521869

吐槽

在连续挖了好几个坑之后,又开了一个新的坑:推理优化。它属于一个llm底层的应用,目的是在操作系统层面来优化llm的执行速度进而优化整个模型。
那闲话少说,我们正式开始。

llm的过程

prefill阶段与decoding阶段

prefill

decoding

这两者的区别是prefill会先把所有的数据进行拿出来计算,后者只会拿很小一块

推理优化的Benchmark

吞吐量

单位时间内系统能吐出多少个decoding
影响因素:模型优化,输入数据长度

First Token Latency(很重要)

首次prefill阶段所花费的时间
影响因素:输入长度

Latency

生成每个词的间隔
影响因素:输入长度

QPS(每秒请求数)

QPS=K/这K个请求的时间
影响因素:显卡利用率

LLM推理的子过程

优化

1/流水线前后处理与高性能采样
本质是处理过程中的Tokenize和Detokenize部分可以在cpu中进行处理,这样就不必浪费gpu资源进而提升效率。
2/动态批处理
利用流水线思想优化处理过程,通过将多个用户的过程结合在一起来提升处理速度,具体来说在self Attention层分成了Flash attention和Decoding attention两个部分一起处理merge step。
3/Cache现存管理
过去的cache是直接给每一个用户分配一个固定大小的内存,也有优化版本将用户的信息切块来分配,都是存在问题的。ppl中采用的VM Allocator在过去的cache基础上做了修改,会根据用户过去的信息来做一个预测长度。这样可以有效的减少浪费
4/KV Cache量化
Q:什么是量化?
A:将浮点数表示的数据转换为更小的数据类型,如整数或固定点数,从而减少存储空间和计算开销。

KV缓存决定了服务器能服务的用户数量,优化缓存就是提升性能
应用在self attation,K,V三个层中
5/矩阵乘法量化
矩阵乘法在模型中花费占比70%以上

量化大体方向

int8 VS int4

int8相比于fp16 加载权重减半,计算时间减半。
int4加载权重会减少的更多,但会多一个解量化的时间,且不减半计算时间。
在服务器中多用int8是因为解量化的时间与计算时间正相关,而服务器中计算占比较大。

本博客参考悠兔机场。转载请注明出处!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/825722.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用wxpython开发跨平台桌面应用,实现程序托盘图标和界面最小化及恢复处理4j

在前面随笔《基于wxpython的跨平台桌面应用系统开发》介绍了一些关于wxpython开发跨平台桌面应用的总体效果,开发桌面应用,会有很多界面细节需要逐一处理,本篇随笔继续深入该主题,对开发跨平台桌面应用的一些实现细节继续深入研究并总结,介绍程序托盘图标和界面最小化及恢…

搞人工智能开源大语言模型GPT2、Llama的正确姿势s7

(如果想及时收到人工智能相关的知识更新,请点击关注!!) 序言:目前我们每一小节的内容都讲解得非常慢,因为这是人工智能研发中的最基础知识。如果我们不能扎实掌握这些知识,将很难理解后续更复杂且实用的概念。因此,我们甚至采用一个概念一节的方式来编排内容,区分得清…

java.字符流.study

字节流适合文档文件的复制,而字符流适合文本的读取。

java.IO缓冲流.study

1,字节缓冲流 2,字符缓冲流 3,原始流,缓冲流 原始流,缓冲流的性能分析:

Sentinel学习圣经:从入门到精通 Sentinel,最全详解 (40+图文全面总结)

文章很长,且持续更新,建议收藏起来,慢慢读!疯狂创客圈总目录 博客园版 为您奉上珍贵的学习资源 : 免费赠送 :《尼恩Java面试宝典》 持续更新+ 史上最全 + 面试必备 2000页+ 面试必备 + 大厂必备 +涨薪必备 免费赠送 :《尼恩技术圣经+高并发系列PDF》 ,帮你 实现技术自由,…

20222424 2024-2025-1 《网络与系统攻防技术》实验四实验报告

20222424 2024-2025-1 《网络与系统攻防技术》实验四实验报告 1.实验内容恶意代码文件类型标识、脱壳与字符串提取。 使用IDA Pro静态或动态分析,寻找特定输入,使其能够输出成功信息。 分析恶意代码样本rada,并撰写报告。 取证分析实践——Windows 2000系统被攻破并加入僵尸…

猿人学web端爬虫攻防大赛赛题第19题——乌拉乌拉乌拉

题目网址:https://match.yuanrenxue.cn/match/19 解题步骤看触发的数据包。有这么好的事情,没有加密的参数,url非常简单,直接写代码访问。 import requestsurl = "https://match.yuanrenxue.cn/api/match/19?page=1" headers = {Host: match.yuanrenxue.cn, Con…

Visual Studio 2022安装水晶报表(Crystal Reports)

这些天,为程序呈现报表。当想添加Crystal Report时,发现Visual Studio 2022无法添加报表。只有重新下载啦。去这里https://www.tektutorialshub.com/crystal-reports/download-crystal-reports-for-visual-studio-2022/下载上面图片,标志1,即是安装至vs2022。 而标志2,是运…

整理几个国内常用的个人创作者知识付费平台

个人创作者的作品如何实现销售?如何解决收款问题?又该如何提升曝光率?如何让个人创作的作品真正发挥其价值?无论是文件、文档、软件、源码、绘画、动漫、视频、音频、乐谱、小说、图集,创作者们都需要一个便捷的平台来促进与用户之间的交易和联系。因此,知识付费平台应运…

Error infos:DedeCms错误警告:连接数据库失败,可能数据库密码不对或数据库服务器出错!

检查数据库配置使用FTP工具打开htdocs/data/common.inc.php文件。 查找并记录cfg_dbpwd的值(数据库密码)。验证数据库密码登录云虚拟主机控制台,进入“数据库信息”页面。 单击数据库名称右侧的“管理”按钮,输入记录的密码进行验证。重置密码(如果需要)如果密码错误,点…

访问云盘

www.cnblogs.com/delphixx

上传网站文件至云虚拟主机后提示文件大小为0 KB

使用FileZilla工具成功连接云虚拟主机后,网站文件上传到主机站点时,提示传输的文件大小为0 KB。具体错误信息显示已传输0个文件且文件大小为0字节,表示传输的文件大小为0 KB。 问题原因 该问题是由于云虚拟主机空间已占满导致的。当云虚拟主机的空间已满时,无法成功上传新的…