Pytorch 3-GPU, для обучения можно использовать только 2 из них

У меня три 1080TI, но при тренировке я могу использовать только 2 из них..

Код:

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

criterion = nn.CrossEntropyLoss().cuda()
optimizer_conv = optim.SGD(model.classifier.parameters(), lr=0.0001, momentum=0.9)
exp_lr_scheduler = lr_scheduler.StepLR(optimizer_conv, step_size=7, gamma=0.1)

поездная часть:

outputs = nn.parallel.data_parallel(model,inputs,device_ids=[0,1,2])

С "CUDA_VISIBLE_DEVICES="1,2,3" python train.py" Получилось:

| 22%   35C    P8    10W / 250W |     12MiB / 11178MiB |      0%  
| 43%   59C    P2    92W / 250W |   1169MiB / 11178MiB |     49%   
| 44%   60C    P2    91W / 250W |   1045MiB / 11175MiB |     54% 

С "CUDA_VISIBLE_DEVICES="0,1,2" python train.py" Получилось:

| 21%   38C    P2    95W / 250W |   1169MiB / 11178MiB |     78%      Default |  
| 42%   63C    P2    93W / 250W |    777MiB / 11178MiB |     76%      Default |  
| 43%   64C    P0    85W / 250W |    282MiB / 11175MiB |      0%      Default |

person 王康年    schedule 31.10.2018    source источник
comment
это может представлять интерес   -  person Robert Crovella    schedule 31.10.2018


Ответы (1)


ээээ.. Я нашел причину:
мой размер партии = 4, когда есть три графических процессора
поэтому увеличение размера партии может решить эту «странную» проблему

person 王康年    schedule 31.10.2018
comment
Я столкнулся с тем же, и это было также для меня. У меня было четыре графических процессора, 3 из них работали, но один из них, как ни странно, не работал. И размер моей партии тоже был 4. - person Mehmet Burak Sayıcı; 01.08.2019