1

我使用以下命令将 TensorFlow 模型转换为 ONNX: python -m tf2onnx.convert --saved-model tensorflow-model-path --opset 10 --output model.onnx 转换成功,我可以在安装onnxruntime.

但是当我创建一个新环境,onnxruntime-gpu在其上安装并使用 GPU 进行推理时,我会根据模型收到不同的错误消息。例如我收到的 MobileNetW:onnxruntime:Default, cuda_execution_provider.cc:1498 GetCapability] CUDA kernel not supported. Fallback to CPU execution provider for Op type: Conv node name: StatefulPartitionedCall/mobilenetv2_1.00_224/Conv1/Conv2D

我尝试了不同的opsets。有人知道为什么我在 GPU 上运行时会出错

4

1 回答 1

1

那不是错误。这是一个警告,它基本上告诉您该特定 Conv 节点将在 CPU(而不是 GPU)上运行。这很可能是因为 GPU 后端尚不支持非对称填充,并且正在进行 PR 以缓解此问题 - https://github.com/microsoft/onnxruntime/pull/4627。一旦这个 PR 被合并,这些警告就会消失,这样的 Conv 节点将在 GPU 后端运行。

于 2020-08-11T00:11:38.037 回答