Распараллеливание данных в выводе Pytorch для нескольких графических процессоров

#python-3.x #deep-learning #pytorch

Вопрос:

Мы используем распараллеливание данных для нашего проекта , который выполняется на нашем сервере с 2 графическими процессорами Nvidia, для вывода мы используем распараллеливание данных Pytorch, но 2-й графический процессор всегда находится в режиме ожидания.

Мы используем следующий код :

 device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
n_gpu = torch.cuda.device_count()

if torch.cuda.is_available():

    net.load_state_dict(torch.load(model_dir))
    if n_gpu> 1 :
        net = nn.DataParallel(net,device_ids = [0, 1])
    net.to(device)
 

Также смотрите прилагаемый скриншот !

изображение

Комментарии:

1. Что произойдет, если вы попробуете torch.nn.parallel.DistributedDataParallel(net, device_ids=[0, 1] вместо nn.DataParallel ? Источник документа PyTorch