Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何使用2 gpu在tensorflow中计算?_Python_Tensorflow - Fatal编程技术网

Python 如何使用2 gpu在tensorflow中计算?

Python 如何使用2 gpu在tensorflow中计算?,python,tensorflow,Python,Tensorflow,我使用两个GTX980GPU。 当我处理tensorflow中的slim时。 通常,我有一个所谓的“内存不足”的问题。 所以,我想同时使用两个gpu。 如何使用2 gpu? 哦,对不起,我的英语水平很差(如果您想在多个GPU上运行TensorFlow,您可以以多塔的方式构建模型,其中每个塔被分配给不同的GPU。例如: # Creates a graph. c = [] for d in ['/gpu:2', '/gpu:3']: with tf.device(d): a = tf.

我使用两个GTX980GPU。 当我处理tensorflow中的slim时。 通常,我有一个所谓的“内存不足”的问题。 所以,我想同时使用两个gpu。 如何使用2 gpu?
哦,对不起,我的英语水平很差(

如果您想在多个GPU上运行TensorFlow,您可以以多塔的方式构建模型,其中每个塔被分配给不同的GPU。例如:

 # Creates a graph.
c = []
for d in ['/gpu:2', '/gpu:3']:
  with tf.device(d):
    a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2, 3])
    b = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[3, 2])
    c.append(tf.matmul(a, b))
with tf.device('/cpu:0'):
  sum = tf.add_n(c)
# Creates a session with log_device_placement set to True.
sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
# Runs the op.
print(sess.run(sum))
您将看到以下输出

    Device mapping:
/job:localhost/replica:0/task:0/gpu:0 -> device: 0, name: Tesla K20m, pci bus
id: 0000:02:00.0
/job:localhost/replica:0/task:0/gpu:1 -> device: 1, name: Tesla K20m, pci bus
id: 0000:03:00.0
/job:localhost/replica:0/task:0/gpu:2 -> device: 2, name: Tesla K20m, pci bus
id: 0000:83:00.0
/job:localhost/replica:0/task:0/gpu:3 -> device: 3, name: Tesla K20m, pci bus
id: 0000:84:00.0
Const_3: /job:localhost/replica:0/task:0/gpu:3
Const_2: /job:localhost/replica:0/task:0/gpu:3
MatMul_1: /job:localhost/replica:0/task:0/gpu:3
Const_1: /job:localhost/replica:0/task:0/gpu:2
Const: /job:localhost/replica:0/task:0/gpu:2
MatMul: /job:localhost/replica:0/task:0/gpu:2
AddN: /job:localhost/replica:0/task:0/cpu:0
[[  44.   56.]
 [  98.  128.]]

我不确定是否存在“内存不足”问题,因为您没有给出代码片段。

默认情况下,如果安装了TensorFlow的GPU版本,TensorFlow将使用所有可用的GPU

要控制GPU内存分配,可以使用
tf.ConfigProto().GPU\u选项