记录TritonServer部署多模型到多GPU踩坑 | 京东云技术团队

一、问题是怎么发现的

部署chatglm2和llama2到一个4*V100的GPU机器上遇到问题

config.pbtxt

中设置模型分别在指定gpu上部署实例配置不生效

如以下配置为在gpu0上部署本模型,部署count=1个实例,在gpu1上部署本模型,部署count=2个实例

instance_group { count: 1 kind: KIND_GPU gpus: \[ 0 },

{ count: 2

kind: KIND_GPU

gpus: 1 } ]

部署时发现,所有模型实例都会被部署到gpu0上面, 由于gpu只有16g显存,在部署第一个模型实例成功后,第二个模型实例也会往gpu0上进行加载,最终导致cuda out of memery.

网上搜索发现有人遇到同样的问题,链接: github.com/triton-infe...

二、问题带来的影响

三、排查问题的详细过程

大佬回答解决方案:

四、如何解决问题

1.在model.py手动获取config.pbtxt配置的gpu编号gpus:0

instance_group [

{

count: 1

kind: KIND_GPU

gpus: 0

}

]

2.设置可用的GPU编号

os.environ"CUDA_VISIBLE_DEVICES" = str(device_id)

3.启动成功

五、总结反思:是否可以更快发现问题?如何再次避免等。

triton启动的使用使用 nvidia-smi -l 2 监控显卡想显存, 可以发现所有模型都在往第一个gpu,gpu0内加载,发现配置config.pbtxt不生效

作者:京东科技 杨建

来源:京东云开发者社区 转载请注明来源

相关推荐
liulilittle1 小时前
为什么需要回程闲置保护?
ai·llm·prompt·agent·tools·subagent·opencode
七牛开发者1 小时前
HarnessDev:让 LLM 自己创建并迭代 Agent Harness
chatgpt·llm·agent
桃西西呀2 小时前
红酒标签上的 87 分是怎么算出来的?我拿 1599 瓶真酒把线性回归和逻辑回归拆开讲
人工智能·机器学习·llm
python零基础入门小白3 小时前
LangGraph智能体实战:如何用Langfuse构建AI运行时全链路可观测系统?
人工智能·学习·ai·chatgpt·程序员·大模型·智能体
阿里云大数据AI技术4 小时前
EMR Serverless Spark:CPU + GPU 异构计算使用指南
人工智能·spark·gpu
uncle_ll5 小时前
从 localStorage 到 Chrome 商店:一个 HTML 文件的 7 次重构
llm·agent·codex·workbuddy
武子康6 小时前
9/10 和 900/1000 都是 90%:机器人成功率计算器必须阻止的误判
人工智能·llm·agent
武子康6 小时前
第一次用 SGLang:把本地模型接进聊天应用
人工智能·llm·agent
Web极客码8 小时前
Pydantic 校验通过不等于答案正确:如何识别 LLM 的语义错误
服务器·人工智能·ai·llm