使用conda环境时出现问题。
我可以通过以下方式简单地创建环境:
conda create -n NAME python==3.5
因此有一个python 3.5虚拟环境。 然后进入虚拟环境,并使用以下命令安装tensorflow-gpu:
conda install tensorflow-gpu
现在我可以看到tensorflow-gpu软件包以及cudatoolkit和cudnn。 但是,当我运行一个简单的程序时,它只是无法使用gpu。我不认为这是nvidia驱动程序问题或来自其他资源的软件包,因为它可以在旧的conda环境中工作,但是当我创建新的程序时,它会失败。
更有趣的是它将从环境外部使用软件包(tensorrt和uff)。
当我使用python 3.6创建一个新环境时,它可以使用tensorflow-gpu正常工作,并且无法导入该环境中未安装的软件包。
有人知道如何解决该问题吗?
Ubuntu 16.04
Tensorflow 1.8.0
Python 3.5和3.6
TensorRT 5.0.0.10
答案 0 :(得分:1)
我已经解决了。 原来,这个问题是conda环境添加了来自本地的路径,并从本地路径而不是环境中导入了软件包。
如果遇到相同的问题,请尝试通过以下方法在conda环境中打开python:
python
并检查系统路径:
import sys
print(sys.path)
如果有外部库,则使用以下命令将其删除:
rm -r ~/PATH
此问题可能源于在某些程序中无意添加路径。
希望有帮助。
答案 1 :(得分:0)
如果使用jupyter笔记本,也会发生这种情况。例如, 如果您已经安装了jupyter笔记本并且随后创建了环境,则jupyter笔记本不在该环境范围内,并且会忽略您在环境中安装的所有软件包。我需要在创建的每个环境中都安装jupyter笔记本,以防止发生这些错误。