Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.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
Tensorflow 在多个GPU上并行训练,无法提高GPU的利用率_Tensorflow_Keras_Deep Learning_Gpu_Tensorflow Datasets - Fatal编程技术网

Tensorflow 在多个GPU上并行训练,无法提高GPU的利用率

Tensorflow 在多个GPU上并行训练,无法提高GPU的利用率,tensorflow,keras,deep-learning,gpu,tensorflow-datasets,Tensorflow,Keras,Deep Learning,Gpu,Tensorflow Datasets,我使用Tensorflow输入数据管道从一个大的csv文件中读取数据,并使用镜像策略在同一集群的多个GPU上训练神经网络。我的问题是,我不能使用超过20%的GPU,如您所见: 以下是我的示例代码: x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.25,shuffle=True, random_state=42) Train=tensorflow.data.Dataset.from_te

我使用Tensorflow输入数据管道从一个大的csv文件中读取数据,并使用镜像策略在同一集群的多个GPU上训练神经网络。我的问题是,我不能使用超过20%的GPU,如您所见:

以下是我的示例代码:

    x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.25,shuffle=True,  random_state=42)
    Train=tensorflow.data.Dataset.from_tensor_slices((x_train,y_train))
    Train = Train.batch(1200,drop_remainder=False).cache()
    Train = Train.prefetch(tensorflow.data.experimental.AUTOTUNE)
    Test=tensorflow.data.Dataset.from_tensor_slices((x_test,y_test))
    Test = Test.batch(1200,drop_remainder=False).cache()
    Test = Test.prefetch(tensorflow.data.experimental.AUTOTUNE)
    with strategy.scope():
        model.compile(loss='mean_squared_error', 
        model.fit(Train,validation_data=Test,verbose=1,epochs=100)
有人知道如何提高我的GPU利用率吗?我甚至尝试将批处理大小增加到1200,但这没有多大帮助(我也不想将批处理大小增加太多,因为我可能会收敛到具有较大批处理大小的局部极小值!)