环境包:
onnxruntime-1.15.0-Linux.run
onnxruntime-1.19.2+das.opt1.dtk25042-cp310-cp310-manylinux\_2\_28\_x86\_64.whl
migraphx-5.1.0+das.opt1.dtk25042-cp310-cp310-manylinux_2_28_x86_64.run
测试代码:
```python
import onnxruntime as ort
import numpy as np
model_path = './resnet50-v2-7.onnx'
providers = [
'MIGraphXExecutionProvider',
#'ROCMExecutionProvider',
#'CPUExecutionProvider',
]
#创建sess_options
sess_options = ort.SessionOptions()
sess_options.graph_optimization_level = ort.GraphOptimizationLevel.ORT_ENABLE_BASIC
sess_options.enable_profiling = False
session = ort.InferenceSession(model_path,sess_options,providers=providers,provider_options=[{'device_id': '0'}])
image = np.random.rand(1,3,224,224).astype(np.float32)
input_name=session.get_inputs()[0].name
result = session.run(None, input_feed={input_name:image})
```
报错:
```bash
*************** EP Error ***************
EP Error /home/onnxruntime/onnxruntime/core/session/provider_bridge_ort.cc:1637 onnxruntime::Provider& onnxruntime::ProviderLibrary::Get() [ONNXRuntimeError] : 1 : FAIL : Failed to load library libonnxruntime_providers_migraphx.so with error: /opt/dtk/lib/libonnxruntime_providers_migraphx.so: undefined symbol: migraphx_compile_options_set_device_id
when using ['MIGraphXExecutionProvider']
Falling back to ['CPUExecutionProvider'] and retrying.
****************************************
```
1. 在开发者社区上下载对应OS的dtk25042包并进行安装
2. ort、migraphx以及dtk替换成最新的dtk2604版本的包进行安装