我怀疑是否在我的gpu盒上正确配置了tensorflow,因为在我的花式gpu机器上训练一个简单的线性回归模型(batchsize = 32,1500输入特征,150个输出变量)比每次迭代慢大约100倍在我的笔记本上。
我正在使用Titan X,带有现代cpu等.nvidia-smi说我只有10%的gpu利用率,但我希望这是因为批量小。我没有使用feed_dict将数据移动到计算图中。一切都来自tf.decode_csv和tf.train.shuffle_batch。
有没有人对如何轻松测试我的安装是否正确有任何建议?有没有简单的速度基准?我的笔记本电脑和gpu机器之间的速度差异非常大,以至于我预计事情配置不正确。
答案 0 :(得分:16)
尝试tensorflow/tensorflow/models/image/mnist/convolutional.py
,这将打印每步计时。
在特斯拉K40c上,每步应该大约16 ms
,而在我3岁的机器上只有大约120 ms
的CPU {/ p>
修改:这已移至models
存储库:https://github.com/tensorflow/models/blob/master/tutorials/image/mnist/convolutional.py。
convolutional.py
文件现在位于models/tutorials/image/mnist/convolutional.py
答案 1 :(得分:15)
延长雅罗斯拉夫斯的答案: 以下是如何进行整个测试过程(已安装CUDA和cudNN)
git clone https://github.com/tensorflow/models.git
为tensorflow创建虚拟环境并安装tensorflow
virtualenv --system-site-packages -p python3 tf-venv3
source tf-venv3/bin/activate
pip install --upgrade pip
pip install --upgrade tensorflow-gpu
在虚拟环境中运行模型
python models/tutorials/image/mnist/convolutional.py
我的GTX 1070每步需要约5毫秒
答案 2 :(得分:0)
答案 given by Yaroslav 和 extended by Patrice 可以简单地再次扩展以使用 TensorFlow v2。
就在 convolutional.py
的第 35 行,而不是:
import tensorflow as tf
输入:
import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()
文件 convolutional.py
已从 tensorflow 存储库中删除,但仍可以在 in the repo history 中找到。