NVIDIA Triton Inference Server 部署 yolov5

文章目录

    • 一、拉取 tensorrt 、yolov5、tritonserver 镜像
    • 二、下载 yolov5-6.2、tensorrtx/yolov5-6.2源码
    • 三、pt转wts
    • 四、wts转engine
    • 五、创建triton推理服务器
    • 六、创建客户端进行测试

一、拉取 tensorrt 、yolov5、tritonserver 镜像

docker pull hakuyyf/tensorrtx:trt8.2_cuda11.2
docker pull ultralytics/yolov5:v6.2
docker pull nvcr.io/nvidia/tritonserver:22.05-py3 

需要注意的是, tensorrtx 镜像和 triton 镜像中的 tensorrt 版本要保持一致, 否则 triton 无法正常调用模型,triton 镜像中的 tensorrt 版本可通过这里查询
Triton Inference Server Release 22.05
在这里插入图片描述

二、下载 yolov5-6.2、tensorrtx/yolov5-6.2源码

mkdir triton-yolov5-trt
cd triton-yolov5-trt# 下载 yolov5-6.2 源码
git clone -b v6.2 https://github.com/ultralytics/yolov5.git# 下载 tensorrtx/yolov5-6.2 源码
git clone -b yolov5-v6.2 https://github.com/wang-xinyu/tensorrtx.git

三、pt转wts

开一个新终端

cd triton-yolov5-trt
cp tensorrtx/yolov5/gen_wts.py yolov5
cd yolov5# 进入yolov5-6.2镜像
docker run -it --rm --gpus all -v $PWD:/yolov5 ultralytics/yolov5:v6.2 /bin/bash  # 在容器内操作, yolov5s.pt需要6.2版本的
cd /yolov5
python gen_wts.py -w yolov5s.pt -o yolov5s.wts

四、wts转engine

开一个新终端

cd triton-yolov5-trt
cp yolov5/yolov5s.wts tensorrtx/yolov5
cd tensorrtx/yolov5  
docker run -it --rm --gpus all -v $PWD:/yolov5 hakuyyf/tensorrtx:trt8.2_cuda11.2 /bin/bash   
cd /yolov5
mkdir build  
cd build   
cmake ..  
make -j16  
./yolov5 -s ../yolov5s.wts ../yolov5s.engine s 

执行完将得到 yolov5s.engine 和 libmyplugins.so

五、创建triton推理服务器

开一个新终端

cd triton-yolov5-trt
mkdir -p triton_deploy/models/yolov5/1/  
mkdir triton_deploy/plugins  
cp tensorrtx/yolov5/yolov5s.engine triton_deploy/models/yolov5/1/model.plan  
cp tensorrtx/yolov5/build/libmyplugins.so triton_deploy/plugins/libmyplugins.so  

启动triton

docker run \
--gpus all \
--rm \
-p9000:8000 -p9001:8001 -p9002:8002 \
-v $(pwd)/triton_deploy/models:/models \
-v $(pwd)/triton_deploy/plugins:/plugins \
--env LD_PRELOAD=/plugins/libmyplugins.so \
nvcr.io/nvidia/tritonserver:22.05-py3 tritonserver \
--model-repository=/models \
--strict-model-config=false \
--log-verbose 1

六、创建客户端进行测试

开一个新终端

cd triton-yolov5-trt
git clone https://github.com/tienluongngoc/yolov5_triton_inference_server.git
cd yolov5_triton_inference_server/client/yolov5
pip install tritonclient
python client.py -o data/dog_result.jpg image data/dog.jpg

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/420400.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

TAbleau 可视化 干货分享 | 简单三步助你打造完美仪表板

只需单击几下,你将能轻松创建美观、信息丰富的可视化效果、节省时间并推动业务向前发展! 借助精心设计的仪表板,分析师可以更好地理解复杂数据背后的信息,更有效地向他人分享你的见解,从而做出更明智的决策。 值得思考…

vivado 时间汇总报告

步骤7:时间汇总报告 定时路径在时钟元素处开始和结束。输入和输出端口不是顺序的 元素,默认情况下,Vivado时序分析不会对进出I/O端口的路径进行计时 设计,除非指定了输入/输出延迟约束。 在此步骤中,您将在Vivado中生成…

单片机-STM32 看门狗(八)

目录 一、看门狗概念 1、定义: 二、单片机中的看门狗 1、功能描述: 2、看门狗设置部分 预分频寄存器(IWDG_PR) 3、窗口看门狗 特性: 4、看门狗配置: 一、看门狗概念 看门狗--定时器(不属于基本定时器、通用定…

客户端绑定本地端口与服务器建立连接的详细实现

客户端绑定本地端口与服务器建立连接的详细实现 一、网络编程基础1.1 TCP/IP协议1.2 套接字(Socket)1.3 客户端与服务器模型二、客户端程序的设计2.1 需求分析2.2 流程设计三、具体代码实现3.1 伪代码3.2 C代码实现四、代码详解4.1 初始化套接字库4.2 创建套接字4.3 绑定本地…

十大护眼大路灯品牌怎么选比较好?护眼灯品牌排行榜前十名

十大护眼大路灯品牌怎么选比较好?作为一名资深家电测评师,我虽然比较认可护眼大路灯,平常自己也在使用,但也提醒广大用户,市场中有些品牌产品本身在生产中做工较为粗糙、使用廉价材质,更因缺乏核心技术&…

2024网安周今日开幕,亚信安全亮相30城

2024年国家网络安全宣传周今天在广州拉开帷幕。今年网安周继续以“网络安全为人民,网络安全靠人民”为主题。2024年国家网络安全宣传周涵盖了1场开幕式、1场高峰论坛、5个重要活动、15场分论坛/座谈会/闭门会、6个主题日活动和网络安全“六进”活动。亚信安全出席20…

你真的懂吗系列——GPIO

你真的懂吗 文章目录 你真的懂吗前言一、GPIO介绍二、GPIO基本结构三、GPIO的八种模式浮空输入输入上拉输入下拉模拟输入开漏输出推挽输出什么是推挽结构和推挽电路?开漏输出和推挽输出的区别?开漏式复用推挽式复用 前言 最近在做STM32的时候发现有些寄…

怎么利用短信接口发送文字短信

在当今这个快节奏的数字时代,即时通讯已成为人们日常生活和工作中不可或缺的一部分。而短信接口(SMS Interface),作为传统与现代通讯技术结合的典范,凭借其高效、稳定、广泛覆盖的特性,在众多领域发挥着不可…

2024年最新微短剧系统重构版,短剧小程序源码开源源码搭建部署

技术栈 前端&#xff1a;vueuniapp 后端&#xff1a;php 数据库&#xff1a;MySQL <?php class Drama {private $title;private $description;private $cast;private $genre;public function __construct($title, $description, $cast, $genre) {$this->title $tit…

【解决bug之路】npm install node-sass(^4.14.1)连环报错解决!!!(Windows)

有关node-sass的深入分析可参考&#xff1a;又报gyp ERR&#xff01;为什么有那么多人被node-sass 坑过&#xff1f; 主要有如下三方面错误&#xff0c;请自查&#xff1a; 1.node&#xff0c;npm版本需与node-sass版本匹配&#xff0c;像node-sass&#xff08;^4.14.1&#x…

高性能反向代理--HAProxy

文章目录 Web架构负载均衡介绍为什么使用负载均衡负载均衡类型 HAProxy简介应用场景HAProxy是什么HAProxy功能 脚本安装HAProxy基础配置global多进程和线程HAProxy日志配置项 Proxies配置-listen-frontend-backendserver配置 frontendbackend配置实例子配置文件 HAProxy调度算法…

大数据-121 - Flink Time Watermark 详解 附带示例详解

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; 目前已经更新到了&#xff1a; Hadoop&#xff08;已更完&#xff09;HDFS&#xff08;已更完&#xff09;MapReduce&#xff08;已更完&am…

【实战篇】为什么表数据删掉一半,表文件大小不变?

背景 日常使用中&#xff0c;当数据库占用空间太大&#xff0c;把一个最大的表删掉了一半的数据&#xff0c;但是表文件的大小还是没变&#xff0c;这是为什么呢&#xff1f; 针对 InnoDB 引擎&#xff0c;一个 InnoDB 表包含两部分&#xff0c;即&#xff1a;表结构定义和数…

使用lspci命令获取加速卡型号

文章目录 前言一、lspci -nn 获取具体厂商及设备ID二、使用步骤三、使用3080Ti再查询一下 前言 新到的实验机器和加速卡&#xff0c;安装好之后发现lspci命令没有显示型号&#xff0c;这里记录下使用 Vendor ID和Device ID 通过网页查询获取加速卡具体型号的过程。 一、lspci …

AbyssFish单连通周期边界多孔结构2D软件 V2.0版本更新

软件更新 AbyssFish单连通周期边界多孔结构2D软件 V2.0&#xff08;以下简称软件&#xff09;新增颗粒双轴尺寸及颗粒走向控制功能&#xff0c;可实现各向异性多孔结构模型建立。关于V1.0版本功能可查看&#xff1a;http://t.csdnimg.cn/TgZmC 软件新增功能可实现颗粒长短轴…

【Leetcode152】乘积最大子数组(动态规划)

文章目录 一、题目二、思路三、代码 一、题目 二、思路 &#xff08;0&#xff09;读懂题意&#xff1a;题目的“连续”是指位置的连续&#xff0c;而不是说数字的连续&#xff0c;这是个大坑。 &#xff08;1&#xff09;确定状态&#xff1a;定义两个状态来记录当前子数组的…

【C++】CLion配置cout打印语句快捷键

点击菜单栏的 File -> Settings->Editor -> Live Templates 点击 Define&#xff0c;选择 C。 点击Apply 和 OK 保存。 当我们sout时&#xff0c;自动出现打印语句。

热点文章轻松生成?一篇测评告诉你ChatGPT的神奇能力

个人名片 &#x1f393;作者简介&#xff1a;java领域优质创作者 &#x1f310;个人主页&#xff1a;码农阿豪 &#x1f4de;工作室&#xff1a;新空间代码工作室&#xff08;提供各种软件服务&#xff09; &#x1f48c;个人邮箱&#xff1a;[2435024119qq.com] &#x1f4f1…

R语言统计分析——用回归做ANOVA

参考资料&#xff1a;R语言实战【第2版】 ANOVA&#xff08;方差分析&#xff09;和回归都是广义线性模型的特例&#xff0c;方差分析也都可以使用lm()函数来分析。 # 加载multcomp包 library(multcomp) # 查看cholesterol数据集的处理水平 levels(cholesterol$trt) # 用aov()…

【练习8】杨辉三角

链接&#xff1a;https://www.nowcoder.com/questionTerminal/e671c6a913d448318a49be87850adbcc 分析&#xff1a; 创建一个二维数组来实现杨辉三角&#xff0c;因为当前元素的值是上一行的当前列与前一列的和&#xff0c;所以创建数组的时候要实现n1&#xff0c;相当于罩子一…