记录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.
网上搜索发现有人遇到同样的问题,链接: 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不生效
作者:京东科技 杨建
来源:京东云开发者社区 转载请注明来源

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
茶百道全链路可观测实战
茶百道是四川成都的本土茶饮连锁品牌,创立于 2008 年 。经过 15 年的发展,茶百道已成为餐饮标杆品牌,全国门店超 7000 家,遍布全国 31 个省市,实现中国大陆所有省份及各线级城市的全覆盖。2021 年 3 月 31 日,在成渝餐·饮峰会中,茶百道斩获“2021 成渝餐·饮标杆品牌奖”。2021 年 8 月,入选艾媒金榜(iiMedia Ranking)最新发布《2021 年上半年中国新式茶饮品牌排行 Top15》。2023 年 6 月 9 日,新茶饮品牌“茶百道”获得新一轮融资,由兰馨亚洲领投,多家知名投资机构跟投,估值飙升至 180 亿元。 今年 4 月,茶百道在成都总部举行了品牌升级发布会,宣布门店数突破 7000 家。根据中国连锁经营协会的数据,截至 2020 年、2021 年以及 2022 年 12 月 31 日,茶百道门店数量分别为 2,240 间、5,070 间以及 6,532 间,疫情并没有拖慢其扩张步伐。 随着业务规模的急速扩展,茶百道全面加速推进数字化转型战略。但由于茶百道部分早期业务系统由外部 SaaS 服务商提供,无法满足线上业务高速增长所带来的大规模...
- 下一篇
解析设计模式与设计原则:构建可维护性和可扩展性代码的重要性
本文分享自华为云社区《深入解析设计模式与设计原则:构建可维护性和可扩展性代码的重要性》,作者: Lion Long。 一、为什么需要设计模式? 1.1、设计模式的定义 设计模式大概有23种。 设计模式是指在软件开发中,经过验证的,用于解决在特定环境下,重复出现的,特定问题的解决方案。 从定义可以看出,设计模式的使用有很多的局限性。一定要明确它解决什么问题,再使用它。当不清楚设计模式解决什么问题时不要轻易使用。 通俗的讲,设计模式是解决软件开发过程中一些问题的固定套路。不要过度的封装或使用设计模式,除非明确了需求的具体变化方向,而且变化方向的点是反复的出现,才会使用设计模式;即慎用设计模式。 设计模式要到达一定的工程代码量才能精通。但是,了解设计模式是需要的。 1.2、设计模式由来 设计模式的由来可以追溯到20世纪80年代,由计算机科学家埃里希·伽玛(Erich Gamma)等人首次提出。他们将设计模式定义为可重复利用的解决方案,用于常见问题和设计挑战。 设计模式的出现是为了解决软件开发中的一些常见问题,帮助开发人员更高效地编写可维护和可扩展的代码。通过使用设计模式,开发人员可以借鉴先前...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Linux系统CentOS6、CentOS7手动修改IP地址
- Hadoop3单机部署,实现最简伪集群
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Windows10,CentOS7,CentOS8安装Nodejs环境
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- Docker安装Oracle12C,快速搭建Oracle学习环境