Если я не указываю использовать CPU / GPU, какой скрипт использует? - PullRequest
0 голосов
/ 23 мая 2018

В pytorch, если я ничего не пишу об использовании CPU / GPU, и моя машина поддерживает CUDA (torch.cuda.is_available() == True):

  1. Что использует мой скрипт, CPU или GPU?
  2. Если процессор, что я должен сделать, чтобы он работал на GPU?Нужно ли все переписывать?
  3. Если в графическом процессоре произойдет сбой этого скрипта, если torch.cuda.is_available() == False?
  4. Это что-нибудь делает для ускорения обучения?
  5. Яосведомлен о переносе кода PyTorch из CPU в GPU , но он старый.Изменится ли эта ситуация в v0.4 или в последующем v1.0?

Ответы [ 3 ]

0 голосов
/ 24 мая 2018

Мой путь такой (ниже pytorch 0.4):

dtype = torch.cuda.float if torch.cuda.is_available() else torch.float
torch.zeros(2, 2, dtype=dtype)

UPDATE pytorch 0.4:

device = torch.device("cuda" if use_cuda else "cpu")
model = MyRNN().to(device)

from PyTorch 0.4.0 Руководство по миграции .

0 голосов
/ 24 мая 2018

Вы должны написать свой код так, чтобы он использовал обработку графическим процессором, если torch.cuda.is_available == True.

Итак:

if torch.cuda.is_available():
    model.cuda()
else:
    # Do Nothing. Run as CPU.
0 голосов
/ 24 мая 2018

PyTorch по умолчанию использует процессор, если только вы не используете методы .cuda() в своих моделях и torch.cuda.XTensor варианты тензоров PyTorch.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...