指定Torch和Tensorflow模型两个独立的GPU

时间:2018-09-11 09:44:36

标签: tensorflow cuda pytorch torch

我正在比较具有两个GPU的机器上的两个预训练模型,一个在Tensorflow中,一个在Pytorch中。每种型号都可安装在一个GPU上。它们都加载在相同的Python脚本中。如何为Tensorflow模型分配一个GPU,为Pytorch模型分配另一个GPU?

设置CUDA_VISIBLE_DEVICES=0,1仅告诉两个模型这些GPU都可用-我(我猜想在Python中)如何确保Tensorflow占用GPU 0,Pytorch占用GPU 1?

1 个答案:

答案 0 :(得分:1)

您可以参考torch.devicehttps://pytorch.org/docs/stable/tensor_attributes.html?highlight=device#torch.torch.device

尤其是

device=torch.device("gpu:0")
tensor = tensor.to(device)

或加载预训练的模型

device=torch.device("gpu:0")
model = model.to(device)

将张量/模型放在gpu 0上。

类似地,张量流具有tf.device。 https://www.tensorflow.org/api_docs/python/tf/devicehttps://www.tensorflow.org/guide/using_gpu

在此描述了其用法

让tensorflow在gpu:0上加载模型

with tf.device("gpu:0"):
     load_model_function(model_path)