一、问题是怎么发现的
部署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
二、排查问题的详细过程
大佬回答解决方案:
三、如何解决问题
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,gpu\[0\]内加载,发现配置config.pbtxt不生效
标签:count,部署,模型,TritonServer,实例,gpu,GPU,京东 From: https://blog.51cto.com/u_15714439/7901842作者:京东科技 杨建
来源:京东云开发者社区 转载请注明来源