1、發現問題
目前模型訓練一次需要11秒左右,懷疑GPU沒有成功調用
查看GPU是否成功調用,nvidia-smi,nvidia-smi 命令解讀

發現沒有相關GPU的進程在跑,GPU沒有被調用,什么問題?需要去查找下原因,首先想到的是我們的tensorflow版本是否是GPU版本的。
2、查看tensorflow版本
顯示默認調用的是CPU,然后tensorflow版本為1.7.0,在查閱的時候發現調用GPU還和cuda 和 cudnn有關

先來查看下我們的cuda版本
版本為8.0,看看是否和我們的tensorflow版本有沖突,參考:TensorFlow GPU 版本總結

顯示1.5版本以上,需cuda 9.0版本,而我們的tensorflow版本為1.7,理論上是需要cuda 9.0以上的版本,現在有兩個思路:
1、升級cuda版本;
2、降級tensorflow版本。
網上初略查了下,升級cuda可能遇到的問題會比較多,下面我們采用第2種思路
3、降級tensorflow版本到1.4
pip install tensorflow-gpu==1.4.0
測試跑的是GPU還是CPU
import numpy
import tensorflow as tf
a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2, 3], name='a')
b = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[3, 2], name='b')
c = tf.matmul(a, b)
sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
print(sess.run(c))
之后就會出現詳細的信息:
然后設置train.py里面的文件,不同模塊找不同模塊的train.py文件,在object_detection模塊修改一下內容:

修改為False即可,在運行模塊,可以發現速度快了很多

服務器終端輸入:nvidia-smi,發現已經有相關GPU的進程在跑

