问题
今天用onnxruntime 在本地部署测试一个训练好的yolov5模型
设置 providers = [‘CUDAExecutionProvider’, ‘CPUExecutionProvider’] ,异常退出,Process finished with exit code -1073740791 (0xC0000409)
设置 providers = [ ‘CPUExecutionProvider’] 正常执行,得到结果
排查过程
1 检查 onnxruntime-gpu 与 cuda 的版本问题
https://onnxruntime.ai/docs/execution-providers/CUDA-ExecutionProvider.html
更换多个版本,异常退出仍存在,
2 搜索 Process finished with exit code -1073740791 (0xC0000409) onnxruntime
https://blog.youkuaiyun.com/qq_54860697/article/details/125551635
根据这篇帖子设置
在运行中点击”编辑配置“,勾选”Emulate terminal in out console“,
再次运行程序,就会看到新的报错内容,
Could not locate zlibwapi.dll. Please make sure it is in your library path
3 搜索 这一句话,发现下面这个帖子
https://blog.youkuaiyun.com/Chaos_Happy/article/details/124064428
根据帖子,查询 nvidia这篇文档,找 zlib
https://docs.nvidia.com/deeplearning/cudnn/install-guide/index.html#install-windows 【目前已找不到提供的链接】
在评论区发现 热心网友提供链接
最终目的地:https://blog.youkuaiyun.com/qq_44224801/article/details/125525721
根据这篇帖子 提供的 百度云链接 下载 zilb
解压后将
lib文件放到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.1\lib
dll文件放到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.1\bin
运行程序,输出正确结果!!!