推理框架|TensorRT
文章平均质量分 64
TensorRT使用笔记
hjxu2016
好记性不如烂笔头|
独乐乐不如众乐乐|
你的纠错与关注就是对我最大的支持
展开
-
win10下torch和trt无法一起加载
self._handle = _dlopen(self._name, mode)OSError: [WinError 127] 找不到指定的程序。import torchimport tensorrt as trt就这两行代码然后就报错了OSError: [WinError 127] 找不到指定的程序。这里推测 我有两个cuda版本,trt依赖的是cuda11.5,torch依赖是cuda11.3先加载torch导致trt找不到依赖的库。解决方案,先加载trt,再加载torch。imp原创 2022-03-08 15:38:12 · 1571 阅读 · 7 评论 -
TensorRT(11):python版本序列化保存与加载模型
TensorRT系列传送门(不定期更新): 深度框架|TensorRT文章目录楼主曾经在TensorRT(7):python版本使用入门一文中简要记录了python版本是序列化与反序列化加载模型的步骤,但因为环境以及TRT版本不同,API也有相当大的变化,这里重新记录下,在windows下,tensorrt8.2.3.0版本下,调用python的API是如何加载模型的。实验案例:采用 yolov5的onnx模型,进行FP16量化保存模型。代码案例均来自 TensorRT提供的sample中。.原创 2022-02-12 14:20:46 · 5809 阅读 · 0 评论 -
TensorRT(10):python版本安装
随着TensorRT8.0版本的发布,windows下也正式支持Python版本了,跟紧NVIDIA的步伐,正式总结一份TensorRT-python的使用经验。一、底层库依赖在安装TensorRT前,首先需要安装CUDA、CUDNN等NVIDIA的基本库,如何安装,已经老生常谈了,这里不再过多描述。关于版本的选择,楼主这里:CUDA版本,楼主这里选择的是 cuda11.5 ,具体cuda版本见 https://developer.nvidia.com/cuda-toolkit-archive,可自原创 2022-02-10 20:56:04 · 12232 阅读 · 4 评论 -
TensorRT(9):查看tensorrt的版本号
两种方式查询TensorRT的版本号原创 2022-02-09 10:50:36 · 13190 阅读 · 0 评论 -
TensorRT(8):动态batch进行推理
TensorRT系列传送门(不定期更新): 深度框架|TensorRT文章目录一、引言二、TRT在线加载模型,并序列化保存支持动态batch的引擎一、引言模型训练时,每次训练可以接受不同batch大小的数据进行迭代,同样,在推理时,也会遇到输入Tensor大小(shape)是不确定的情况,其中最常见的就是动态batch了。动态batch,故名思意,就是只batch大小不确定的情况,比如这次推理了一张图像,下次推理就需要同时推理两张图像。在Tensorflow中,定义一个动态batch的Ten.原创 2021-08-19 14:09:54 · 12329 阅读 · 19 评论 -
TensorRT(7):python版本使用入门
TensorRT系列传送门(不定期更新): 深度框架|TensorRT文章目录一、TRT在线加载模型,并构建推断引擎的步骤二、在线加载onnx模型,序列化保存到本地三、反序列化直接加载保存后的trt模型四、构建cuda数据,推断trt模型本文以onnx分类模型为例,简单介绍TRT-python版本的使用流程,这里不涉及量化,就以fp32为例,验证在线加载onnx模型、序列化保存为trt模型、加载序列后的模型等。TensorRT的使用过程包括两个阶段, build和 deploymentbui.原创 2021-04-15 14:28:35 · 2708 阅读 · 8 评论 -
TensorRT(6):指定GPU列表和设置GPU索引
文章目录1、cudaGetDeviceCount()函数2、cudaSetDevice()函数3、cudaGetDeviceProperties()函数4、cudaChooseDevice()函数5、cudaSetValidDevices()函数遇到的情况是,服务器上有两张卡,默认是跑到卡0上了,现在想在卡1上运行TRT的接口。找了一圈,没有发现TRT提供指定GpuId的设置的参数。可以用CUDA提供的设备管理函数来指定GPU索引号需要调用CUDA函数中的cudaSetDevice(gpuId)选择原创 2020-10-29 11:13:24 · 5882 阅读 · 0 评论 -
TensorRT(5):NvCaffeParser.h接口头文件分析
文章目录一、IBlobNameToTensor类二、IBinaryProtoBlob类三、IPluginFactory和IPluginFactoryExt 类四、ICaffeParser类六、其他记录NvCaffeParser.h头文件的阅读笔记。参考TensorRT5.1.5.0入门 TensorRT头文件学习顾名思义,这个头文件就是用来解析caffe的这个头文件主要包扩如下几个类namespace nvcaffeparser1 { class IBlobNameToTensor原创 2020-10-28 16:53:17 · 1129 阅读 · 2 评论 -
TensorRT(4):NvInferRuntime.h接口头文件分析
文章目录一、ICudaEngine类记录NvInferRuntime.h头文件中的几个重要的接口类以及类中各接口函数的作用头文件中都有英文注释,这里只是简单中文翻译一下,如有误,欢迎讨论。业余时间,看多少记录多少,纯属笔记。NvInferRuntime.h是运行TensorRT的最重要的接口头文件之一,NV都说了This is the top-level API file for TensorRT extended runtime library介绍几个重要的类1、ICudaEngine2、I原创 2020-10-26 14:19:57 · 7378 阅读 · 5 评论 -
TensorRT(3):FP16与分析网络每层的消耗时间
文章目录一、如何使用half2mode二、分析网络的每层消耗的时间三、整体代码以解析caffe分类模型为例,学习fp16量化和分析网路每层消耗的时间参考自TensorRT(4)-Profiling and 16-bit Inference目的:1、分析TRT中网络每一层的运行时间2、fp16量化学习FP16更省内存和更节约推理时间。官方文档3.0上表示,如果只是使用FP16进度代替FP32,实际上性能不会有多达的提升,真正提升性能的是 half2mode。half2mode是TRT的一种执行原创 2020-10-24 14:13:38 · 3463 阅读 · 0 评论 -
TensorRT(2):TensorRT的使用流程
文章目录一、在线加载caffe模型,序列化保存到本地二、反序列化直接加载保存后的trt模型以caffe分类模型为例,简单介绍TRT的使用流程,这里不涉及量化,就以fp32为例,验证trt的结果是否和python端的结果一致。caffe为例,需要提供以下文件deploy.prototxt 网络结构文件weight.caffemodel 权重文件TensorRT的使用过程包括两个阶段, build和 deploymentbuild阶段主要完成模型转换,从caffe或者tf或者pyTorch到Ten原创 2020-10-23 17:48:25 · 3347 阅读 · 3 评论 -
TensorRT(1)-介绍-使用-安装-优秀博文整理
模型部署的人都知道TensorRT,这边留个爪TensorRT(1)-介绍-使用-安装原创 2020-10-23 10:52:11 · 713 阅读 · 0 评论