Можно ли хранить данные в нескольких графических процессорах и вычислять среднее значение для графических процессоров с Pytorch? - PullRequest
1 голос
/ 13 января 2020

Я недавно изучаю pytorch, и этот вопрос встает передо мной.

При обращении к мульти-графическим процессорам я вижу много учебных пособий по поводу «DataParallel». Он разделяет вычисления для разных графических процессоров, а затем объединяет результаты.

Как насчет этого вопроса? Я хочу, чтобы данные сохранялись в разных графических процессорах, а затем вычислили их среднее значение на графических процессорах. Например, если у меня есть 4 тензора одинаковой формы:

tensor_gpu1=tensor_c1.to(device1)
tensor_gpu2=tensor_c2.to(device2)
tensor_gpu3=tensor_c3.to(device3)
tensor_gpu4=tensor_c4.to(device4)
##then I want the average still calculated on GPU (which means no communication with CPU)
##Will it work if I just sum up and divide?
result=(tensor_gpu1+tensor_gpu2+tensor_gpu3+tensor_gpu4)/4 ##Try to add tensors on different GPU.

После прочтения еще нескольких туориалов, теперь мне интересно, будет ли это работать. Говорят, что попытка добавить тензор ЦП и тензор ГП вызовет ошибку. Как насчет тензоров на разных GPU? Пройдет несколько дней, прежде чем я смогу получить доступ к доступному графическому процессору, поэтому я не могу попробовать его сейчас.

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