Как запустить две разные нейронные сети на двух графических процессорах? - PullRequest
0 голосов
/ 07 марта 2020

У меня два GPU, но сейчас используется только один для обучения модели, так как я могу запустить другую нейронную сеть на другом GPU?

1 Ответ

0 голосов
/ 08 марта 2020

Если вы используете pytorch и у вас установлена ​​CUDA, вы можете использовать их .to() функцию

Простой пример документации Pytorch показывает:

>>> tensor = torch.randn(2, 2)  # Initially dtype=float32, device=cpu
>>> tensor.to(torch.float64)
tensor([[-0.5044,  0.0005],
        [ 0.3310, -0.0584]], dtype=torch.float64)

>>> cuda0 = torch.device('cuda:0')
>>> tensor.to(cuda0)
tensor([[-0.5044,  0.0005],
        [ 0.3310, -0.0584]], device='cuda:0')

>>> tensor.to(cuda0, dtype=torch.float64)
tensor([[-0.5044,  0.0005],
        [ 0.3310, -0.0584]], dtype=torch.float64, device='cuda:0')

>>> other = torch.randn((), dtype=torch.float64, device=cuda0)
>>> tensor.to(other, non_blocking=True)
tensor([[-0.5044,  0.0005],
        [ 0.3310, -0.0584]], dtype=torch.float64, device='cuda:0')

Вы можете обратиться по этим ссылкам здесь:

https://pytorch.org/docs/stable/tensors.html#torch .Tensor.to https://pytorch.org/docs/stable/cuda.html#torch .cuda.device

...