浅析vllm执行流程
哥们先求个职,有在招AI编译/推理框架base长三角的求私聊,本人有2年半的MLIR/LLVM开发经验。
有点弃更,感觉有很多很好的文章了,我写不出新意,目前还在搓算子,刷cuda for leetcode。全栈必须全栈,榨干每一滴
一、什么是vllm
vllm是现在非常流行的推理引擎,核心是利用类似操作系统的分页机制管理多batch推理,vllm对显存资源进行了高效利用。另外游凯超博士也着重介绍过CUDAGraph在vllm的使用,可以减少一部分cpu和gpu交互的开销,要求是静态的,一般decode阶段都会用。
游凯超在知乎分享了很多vllm相关的文章,也是vllm的核心开发者。
二、vllm的执行流程
1、编译vllm的debug版本
这里我使用的Python版本是3.12,是用conda创建的虚拟环境
复制conda create --name vllm python=3.12
*可能要升级cuda版本和驱动,先nvcc --version
查看,ubuntu20.04升级到CUDA Toolkit 12.8可以使用如下命令,更多系统以及版本见cuda-toolkit-archive
复制# 可能要卸载旧版本
# sudo apt remove nvidia-cuda-toolkit
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt-get update
sudo apt-get -y install cuda-toolkit-12-8
# 升级后还需要`path`和`LD_LIBRARY_PATH`环境变量的修改
echo 'export PATH=/usr/local/cuda-12.8/bin:$PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/cuda-12.8/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc
#驱动版本太低的也需要更新
sudo apt-get install -y cuda-drivers
升级后可以一把编过去
复制pip install -e .
2、程序执行入口
只能暂时浅尝辄止得了解下,不同架构的gpu路径完全不同
我目前的体验就是 1.降低峰值内存 2.预热把不同输入弄进来,动静结合 3.减少开销 4.通信模型,mesh贪心or求解
参考
本文来自博客园,作者:暴力都不会的蒟蒻,转载请注明原文链接:https://www.cnblogs.com/BobHuang/p/18748091
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)