tensorflow cifar10训练时遇到的问题 GPU未参与运算

在运行cifar10_train.py时发现程序只使用了我的cpu,完全没使用gpu,导致计算非常缓慢,随后我在需要gpu计算的地方添加了gpu作用域,如下

with tf.device('/gpu:0'):
      # Build a Graph that computes the logits predictions from the
      # inference model.
      logits = cifar10.inference(images)

      # Calculate loss.
      loss = cifar10.loss(logits, labels)

      # Build a Graph that trains the model with one batch of examples and
      # updates the model parameters.
      train_op = cifar10.train(loss, global_step)

但是程序开始报错:

Could not satisfy explicit device specification '/device:GPU:0' because no support

原因是在我给的gpu作用域中有些操作无法在gpu上完成,解决方法是在sess定义的地方添加allow_soft_placement=True

sess = tf.Session(config=tf.ConfigProto(allow_soft_placement=True))

然后就可以在gpu上进行矩阵运算了。

猜你喜欢

转载自blog.csdn.net/z962013489/article/details/80279662