记录TritonServer部署多模型到多GPU踩坑 | 京东云技术团队
  GlkGUhBxsw3T 2023年11月02日 52 0

一、问题是怎么发现的

部署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.

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

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

二、排查问题的详细过程

大佬回答解决方案:

记录TritonServer部署多模型到多GPU踩坑 | 京东云技术团队_解决方案_02

三、如何解决问题

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.启动成功

记录TritonServer部署多模型到多GPU踩坑 | 京东云技术团队_人工智能_03

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

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

作者:京东科技 杨建

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

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
GlkGUhBxsw3T