trt
文章平均质量分 73
Lord_Rebel
程序员新兵~
展开
-
torch2trt代码走读
torch2trt 是 nvidia tensort 组 推出的,将torch 模型(torch.nn.Module)整图转换为CudaEngine 并用 TRTModule进行封装(TRTModule 继承于torch.nn.Module,用于forword)这样就实现了以下几个特点:1.独立于torch提供了一套基于trt且兼容torch的量化/转换/推理2.从用户角度,只需简单调用convert 接口,推理部分不用做任何改变(因为继承自torch.nn.module)原创 2023-04-06 19:41:25 · 807 阅读 · 0 评论 -
tf2trt源码走读(一)导读
本篇为“tf2trt源码走读”系列的导读部分。由于工作原因,前段时间阅读了下tf2trt 的源码,现在在这里总结一下,以备不时之需。tf2trt用法可以参考:https://blog.csdn.net/weixin_43842032/article/details/103764010 从使用语言来看,tf2trt分为两部分,python部分作为前端,c++部分作为后端。python部分主要定义了一个converter类用于完成tf2trt的转换(Trt...原创 2022-04-09 18:14:00 · 370 阅读 · 0 评论 -
tensorRT 7.0 学习笔记(六)———踩过的一些坑
本篇文章主要记录下,我在使用trt7.0时遇到的一些问题1.batch inference在trt7.0转换模型时创建IWorkDefinition 时需要使用接口:IBuilder::createNetWorkV2,此时需要使用制定一个flag这个flag可以是EXPLICIT_BATCH 或EXPLICIT_PRECISION.当使用EXPLICIT_BATCH时,生成的engine 输入为4dims的(NCHW)但是无法用trt<6.0的接口(IExcutionContext::ex原创 2021-04-05 22:53:54 · 1437 阅读 · 2 评论 -
tensorRT 7.0 学习笔记(五)———量化/动态输入shape(c++ api)
1.int8 量化首先需要为 Ibuilder 设置校准器(caliborator)主要作用就是通过一定的算法把每层的weights 和输出tensor 映射到 int范围,TRT提供了以下几种校准器:需要在继承其中之一后实现 getBatch()方法,然后调用:为builder设置校准器。同时实现 writeCalibrationCache()andreadCalibrationCache()缓存/载入校准表builder内部的工作原理:1.调用 getBa...原创 2021-03-22 00:26:10 · 2822 阅读 · 0 评论 -
tensorRT 7.0 学习笔记(四)———(c++ api)
1.模型推理:1.1创建IExecutionContextIExecutionContext *context = engine->createExecutionContext();获取输入输出tensor的索引:int inputIndex = engine->getBindingIndex(INPUT_BLOB_NAME);int outputIndex = engine->getBindingIndex(OUTPUT_BLOB_NAME);1.2准备buffer原创 2021-03-14 23:14:03 · 3157 阅读 · 18 评论 -
tensorRT 7.0 学习笔记(三)---使用python api转换onnx模型并序列化
import tensorrt as trt#build loggertrt_logger=trt.Logger(trt.Logger.Warning)#create network#1.parser dataType=trt.float32With trt.Builder(trt_logger) as builder,builder.create_network() as network,trt.CaffeParser() as parser: .原创 2021-03-07 23:28:47 · 868 阅读 · 2 评论 -
tensorRT 7.0 学习笔记(二)——c++ api
1.创建Looger 用于记录转换过程中log2.创建INetwork创建Network有两种方法:1.直接用tensorrt的api搭建网络 2.使用parser(解析器)将已有的模型转换成Network2.1使用api创建Network(略)可以参考:https://github.com/NVIDIA/TensorRT/blob/master/samples/opensource/sampleMNISTAPI/sampleMNISTAPI.cpp官方例子2.2使用pa..原创 2021-03-07 23:21:13 · 2564 阅读 · 3 评论 -
tensorRT 7.0 学习笔记(一)——python api
本系列为我在学习tensorRT 7.0 时的学习笔记主要参考了官方文档以及一些例子。核心概念:Tensorrt.INetWorkDefinition 可以由 parser(uff,tensorflow,caffe,等创建)tensorRT.Builder 可以创建空的Tensorrt.INetWorkDefinitionTensorrt.builder+Tensorrt.INetWorkDefinition 创建tensorrt.ICudaEngine基于tensorrt.ICudaEn.原创 2021-02-27 20:41:07 · 1313 阅读 · 1 评论