博客
关于我
[TensorRT] ERROR: Network must have at least one output
阅读量:155 次
发布时间:2019-02-26

本文共 699 字,大约阅读时间需要 2 分钟。

TensorRT和ONNX转换的Python脚本优化与应用

在YOLOv3模型中使用TensorRT优化,可以有效提升模型的推理速度。以下是基于TensorRT的ONNX转换与优化方案:

在TensorRT的onnx转换脚本中,建议在parser.parse循环外添加以下两行代码:

```pythonlast_layer = network.get_layer(network.num_layers - 1)network.mark_output(last_layer.get_output(0))

这些代码可以确保网络至少有一个输出层,并避免TensorRT错误:"Network must have at least one output"。

此外,确保所使用的环境支持CUDA。如遇到"No module named 'pycuda'"错误,请检查CUDA安装是否正确。

在实际应用中,建议参考以下配置参数:

```pythonTRT_LOGGER = trt.Logger()TRT_MAX_BIND_SIZE = 1280000TRT_MAX_WS = 1 << 30```

通过合理设置TensorRT的内存分配和精度参数,可以显著提升模型的推理效率。

在实际应用中,建议参考以下性能优化建议:

1. 使用FP32精度进行初步转换,之后可以尝试使用INT8精度以减少内存占用

2. 合理设置TensorRT的max_batch_size

3. 使用Cache文件缓存Calibrator结果以优化性能

结合以上优化方法,可以显著提升TensorRT的推理速度和模型的运行效率。

```

转载地址:http://rlzk.baihongyu.com/

你可能感兴趣的文章
python 学习 面向对象编程
查看>>
Python 学习日记第三篇 -- 字典
查看>>
Python 学习笔记(一)Data type
查看>>
python 安装echarts
查看>>
python 安装opencv及问题解决
查看>>
Python 安装程序:“写入文件 C:\Python27\pythonw.exe 时出错“
查看>>
Python 安装避坑指南:从入门到进阶
查看>>
Python 安装配置详解
查看>>
Python 常见的错误类型和继承关系
查看>>
python 常量_零基础学Python系列之一:Python的变量与常量
查看>>
Python 并发编程
查看>>
python 微信扫码登录_python实现微信第三方网站扫码登录(Django)
查看>>
Python 快速下载依赖
查看>>
python实现非参数统计的Cochran检验 (附完整源码)
查看>>
Python 手写数字识别-3-sklearn中的几种算法
查看>>
Python 打开文件注意事项
查看>>
python 批量修改文件名_python windows下批量修改文件名
查看>>
Python 抓取网页乱码问题 以及EXCEL乱码
查看>>
python 抓取网页内容
查看>>
python 按照当前日期创建文件
查看>>