onnx->tensorRT模型转换错误集

在尝试将ONNX模型转换为TensorRT时遇到错误,具体是调用tensorrt.tensorrt.ICudaEngine的deserialize_cuda_engine()函数时参数不匹配。错误指出提供的参数类型不正确,期望的是一个Runtime对象和一个序列化的引擎缓冲区。问题可能源于模型大小超过内存限制,导致设置的内存池限制过小。
部署运行你感兴趣的模型镜像

onnx->tensorRT模型转换错误集

1.tensorrt.tensorrt.ICudaEngine
TypeError: deserialize_cuda_engine(): incompatible function arguments. The following argument types are supported:
   1. (self: tensorrt.tensorrt.Runtime, serialized_engine: buffer) -> tensorrt.tensorrt.ICudaEngine

Invoked with: <tensorrt.tensorrt.Runtime object at 0x7feecb3c6530>, None

函数定位:set_memory_pool_limit ->原因:模型太大,设置限制的值过小
config.set_memory_pool_limit(trt.MemoryPoolType.WORKSPACE, 4096*(1 << 20))
设置最大工作空间大小,层实现需要一个临时工作空间,并且此参数限制了网络中任何层可以使用的最大大小;
当提供的工作空间不足,TensorRT 可能无法找到层的实现;

您可能感兴趣的与本文相关的镜像

PyTorch 2.8

PyTorch 2.8

PyTorch
Cuda

PyTorch 是一个开源的 Python 机器学习库,基于 Torch 库,底层由 C++ 实现,应用于人工智能领域,如计算机视觉和自然语言处理

### 下载和安装 ONNX-TensorRT 最新版本 #### 准备工作 为了成功下载并安装 ONNX-TensorRT 的最新版本,需先确认已安装必要的依赖项。这通常包括但不限于 Python、CMake 和 NVIDIA CUDA Toolkit 版本兼容性的检查。 #### 获取源码 访问官方 GitHub 镜像站点获取最新的 ONNX-TensorRT 源代码是一个推荐的方法。通过 Git 命令克隆仓库可以确保获得最稳定的发布版: ```bash git clone --recursive https://gitcode.com/gh_mirrors/on/onnx-tensorrt.git cd onnx-tensorrt ``` 上述命令会从指定位置拉取项目及其子模块到本地环境[^1]。 #### 编译构建 进入 `onnx-tensorrt` 文件夹后,按照官方文档说明进行编译前准备。特别注意,在某些情况下可能需要修改特定头文件来适应不同的开发环境设置;例如,在 NvOnnxParser.h 文件开头定义宏指令以解决 API 调用问题: ```cpp #define TENSORRTAPI __declspec(dllexport) ``` 此操作有助于避免潜在链接错误,提高编译成功率[^3]。 完成预处理之后,继续执行 CMake 构建过程: ```bash mkdir -p build && cd build cmake .. make -j$(nproc) sudo make install ``` 这些步骤将生成所需的库文件,并将其放置于系统的标准路径下以便后续调用。 #### 测试验证 最后一步是对刚刚安装好的 ONNX-TensorRT 进行功能测试。可以通过转换一个简单的 ONNX 模型TensorRT 引擎来进行初步检验: ```bash source /path/to/tensorrt/bin/setup_environment.sh onnx2trt my_model.onnx -o my_engine.trt ``` 如果一切顺利,则表示 ONNX-TensorRT 已经正确部署完毕,可投入使用[^2]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值