【已解决】onnx无法找到CUDA的路径

报错

RuntimeError: D:\a\_work\1\s\onnxruntime\python\onnxruntime_pybind_state.cc:857 onnxruntime::python::CreateExecutionProviderInstance CUDA_PATH is set bu
t CUDA wasnt able to be loaded. Please install the correct version of CUDA andcuDNN as mentioned in the GPU requirements page  (https://onnxruntime.ai/docs/execution-providers/CUDA-ExecutionProvider.html#requirements),  make sure they're in the PATH, and that your GPU is supported.
 

问题分析

onnx找到了gpu,但是还是不能调用

解决办法

  1. 先检查一下cudnn的环境变量配置是否正确,如果不正确,先看看怎么安装cudnn

  2. 接下来是环境变量没问题的情况

        环境变量没问题的话,一般就是cudnn和cuda以及onnx的版本不匹配

        版本匹配看这里

        查看好自己cudnn和cuda对应onnx版本后,输入这个

pip install onnxruntime-gpu==
### ONNXRuntime CUDA 错误126 的解决方案 错误126通常表示找不到指定模块或其依赖项。对于ONNXRuntimeCUDA相关的错误126,可能的原因包括但不限于CUDA版本不匹配、环境变量配置不当以及缺少必要的DLL文件。 #### 1. 验证并调整CUDA版本兼容性 确保安装的CUDA版本与ONNXRuntime支持的版本相匹配非常重要。如果使用的CUDA版本过高或过低都可能导致加载失败[^1]。建议查阅官方文档确认当前ONNXRuntime所支持的具体CUDA版本范围,并据此选择合适的CUDA版本进行重新安装。 #### 2. 设置正确的环境变量路径 为了使系统能够找到所需的CUDA库文件,在安装完成后需正确设置`PATH`环境变量。具体来说,应将CUDA bin目录(如`C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\vX.X\bin`)添加到系统的`PATH`环境中。这一步骤可以确保当程序尝试调用CUDA相关功能时能找到对应的动态链接库(DLL)。 #### 3. 安装缺失的Visual C++ Redistributable包 有时即使已经正确设置了环境变量但仍会遇到此类问题,这时可能是由于缺乏某些运行时组件所致。特别是针对较新的CUDA工具链而言,往往还需要额外安装对应版本的Microsoft Visual C++ Redistributable Package来满足依赖关系[^2]。 #### 4. 检查TensorRT及其插件是否正常工作 从报错信息来看,实际是在尝试加载名为`onnxruntime_providers_tensorrt.dll`的文件时发生了异常。这意味着除了基本的CUDA外,还涉及到对TensorRT的支持。因此也需要验证TensorRT本身及相关插件是否已成功部署并且处于可用状态。 ```bash # 使用命令行测试TensorRT是否存在及版本号 dpkg -l | grep tensorrt ``` 通过以上措施应该能有效解决大部分由错误126引发的问题。不过需要注意的是,具体情况可能会有所不同,所以在排查过程中还需结合实际情况灵活应对。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值