Anaconda虚拟环境下的PyCharm使用Tensorflow调用GPU出现dll文件缺失的问题和解决办法

由于最近要跑神经网络,因此需要安装tensorflow,然后百度上面搜了一大堆,尝试了很多很多方法, 先是下对应的CUDA和CUDNN,版本号也和tensorflow对上了,各种环境变量和奇奇怪怪的东西折腾了半天,尼玛的GPU版本的还是报错!!!

之后使用北大教程里面Anaconda虚拟环境的方法,直接在虚拟环境中安装相应版本的python,CUDA,cudnn,tensorflow,

北大教程:https://www.bilibili.com/video/BV1B7411L7Qt

最后在Anaconda Prompt中成功调用GPU,他妈的当时可把老子激动坏了,心想终于可以开始跑我的神经网络了
在这里插入图片描述
后面我到PyCharm使用这个虚拟环境,结果他妈比的又开始报错了,各种dll文件缺失。

就比如这种:Could not load dynamic library ‘cudart64_101.dll‘; dlerror: cudart64_101.dll not found

然后我就搜网上的方法,大部分都是缺啥找啥,然后我就把各个dll文件找过来再放进,尼玛的,折腾了半天还是没有用。

最后我静下心来仔细思考了下,既然在Anaconda Prompt是可以的,同一个虚拟环境为什么在PyCharm就不行呢?

于是我就开始检查PyCharm里面运行的tensorflow是不是我虚拟环境里面配的(因为我之前可能装了好几个,说不定混了),结果发现,问题不在这

import tensorflow as tf
print(tf.__version__)
print(tf.__path__)

在这里插入图片描述
这就说明虚拟环境是对的,然后我又是找啊找,最后找到这篇文章,尼玛的,还真成功了!!!!

https://zhuanlan.zhihu.com/p/72615307

实际上就是路径的问题,这位大佬属实牛逼,问题就出在path上面,PyCharm找到的虚拟环境是不完整的,如这位大佬所说,PyCharm中PATH的值会莫名缺失Anaconda下相应虚拟环境的PATH相关值。如果你根据大佬的方法在Anaconda Prompt打开PyCharm没有报错,那么就是这个问题。
在这里插入图片描述
打开后运行测试代码

import tensorflow as tf
print(tf.__version__)
print(tf.test.is_gpu_available())

在这里插入图片描述
啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊,折腾了一天总算成功了。

总结:个人感觉,网上那种缺dll文件就下载补上去的方法有的时候可以,有的时候不行,但终究是指标不治本,不是解决问题的根本办法。有的时候,要带着思考去搜问题,最好要懂为什么要这么做,要不然感觉会白白浪费很多时间。比如什么是环境变量,为什么要配环境变量,32位和64位的区别,这些常识性问题一定要懂。 感觉只有在这样的思维模式下训练,DeBug解决问题的能力才会越来越强,要不然永远只是一个只会搜csdn的入门学生。。。

  • 9
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值