我正在用GPU开发一台共享机器。它过去只有一个版本的tensorflow工作tensorflow-gpu==0.12.0rc1,但最近它也有最近的非gpu版本。
tensorflow==1.0.1
tensorflow-gpu==0.12.0rc1我的代码不再使用GPU设备了。我尝试只导入旧版本的import tensorflow-gpu as tf或要求tensorflow-gpu成为旧版本:
import pkg_resources
pkg_resources.require("tensorflow-gpu==0.12.0rc1")
import tensorflow as tf但它可以追溯到只使用CPU设备。
有没有办法“隐藏”我的python脚本中最新的tensorflow版本,或者强迫它以任何方式使用gpu版本?
我没有sudo特权,通过管理渠道是很费时的。
发布于 2017-03-16 10:05:02
您可以通过在您的家中设置虚拟环境来隐藏它(不需要sudo )。您没有指定python版本,所以我假设您已经安装了virtualenv (它附带了最新版本),否则就安装它(同样,不需要sudo -请参阅https://stackoverflow.com/a/5177027/524436)。
然后,用
# create directory to store environments in
mkdir -p ~/virtualenvs
cd ~/virtualenvs
# create virtual environment for tensorflow
# --no-site-packages hides the global packages like the CPU TF
virtualenv --no-site-packages tensorflow
# activate the virtual environment
source tensorflow/bin/activate您可以在一个干净的环境中安装python软件包。
# install what you want - tensorflow, matplotlib, ...
pip install matplotlib“激活”行只是更改当前的shell会话,因此如果您打开一个新的shell,则需要执行source ~/virtualenvs/tensorflow/bin/activate来激活它。还可以使用虚拟包装器来减少所需的输入量。
https://stackoverflow.com/questions/42829630
复制相似问题