TensorFlow v2.9调用GTX1050移动版GPU的兼容报错咨询
报错原因
Could not load dynamic library 'libcudnn.so.8'报错的核心诱因是TensorFlow官方发布的v2.9预编译包在构建阶段硬绑定了对应版本的CUDA、cuDNN动态库符号,仅对官方测试过的特定依赖版本做了链接适配。你当前安装的CUDA 11.4、cuDNN 8.2.4虽然满足NVIDIA官方给出的驱动-CUDA-cuDNN兼容矩阵要求,但不在TF2.9的预编译包适配范围内,动态链接器无法匹配到对应版本的库文件就会抛出该错误。- 若后续版本匹配后仍出现同类报错,需检查cuDNN的库路径是否已加入系统动态库搜索路径:Linux环境需确认cuDNN的lib目录是否在
LD_LIBRARY_PATH中,Windows环境需确认cuDNN的bin目录是否加入系统PATH。
TensorFlow v2.9 适配GTX 1050 Mobile的正确版本组合
- 显卡驱动:你当前安装的470.129.06版本完全可用,无需更换。470.xx分支是GTX 10系显卡的稳定适配分支,且满足CUDA 11.2的最低驱动要求(Linux最低要求450.80.02、Windows最低要求456.38),
nvidia-smi可正常返回显卡信息即代表驱动层无问题。 - CUDA Toolkit:需安装11.2版本,该版本是TensorFlow v2.9官方构建测试时使用的指定CUDA版本,安装完成后需将CUDA的bin、lib64目录加入系统环境变量。
- cuDNN:需安装适配CUDA 11.2的v8.1.x版本,推荐使用8.1.0.77,安装时可直接将cuDNN压缩包内bin、include、lib目录下的文件复制到CUDA 11.2安装路径的对应目录下,也可单独将cuDNN的lib路径加入系统动态库搜索路径。
不想调整系统全局CUDA、cuDNN版本的话,可以直接通过conda创建虚拟环境安装TensorFlow v2.9,conda会自动在虚拟环境内安装匹配版本的CUDA、cuDNN依赖,不会和系统全局安装的版本冲突,安装完成后即可在虚拟环境内正常调用GPU加速。
内容的提问来源于stack exchange,提问作者ptushev
相关产品推荐
相关产品推荐

