Tensorflow 在多个GPU上并行训练,无法提高GPU的利用率
我使用Tensorflow输入数据管道从一个大的csv文件中读取数据,并使用镜像策略在同一集群的多个GPU上训练神经网络。我的问题是,我不能使用超过20%的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
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,但这没有多大帮助(我也不想将批处理大小增加太多,因为我可能会收敛到具有较大批处理大小的局部极小值!)