есть ли какой-либо способ использовать RAM и VRAM одновременно в Pytorch?

#deep-learning #pytorch

#глубокое обучение #pytorch

Вопрос:

Когда я использую Keras , он загружает входной набор данных в оперативную память a

и загружает сети на VRAM, чтобы я мог обучать разные большие сети.

Однако я не могу найти способ сделать это с помощью pytorch

и это заставляет меня использовать так мало памяти, я думаю.

Есть ли какой-нибудь способ использовать обе оперативные памяти на pytorch?

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

1. Что заставляет вас думать, что PyTorch этого еще не делает?

2. @hkchengrex Я очень новичок в pytorch, поэтому, пожалуйста, скажите мне, как

3. Как только вы определяете экземпляр модуля, вызывающий метод .cuda() класса вашего модуля, передает все параметры модели и буферы в память GPU.

4. @jodag Можно ли переносить модель только на графический процессор и сохранять загруженные данные в оперативной памяти?

5. Данные, возвращаемые из вашего набора данных, должны быть перенесены на тот же графический процессор, что и модель, прежде чем передавать их в модель. Обычно это делается непосредственно перед вызовом модели. Например, внутри for x, y in dataloader: цикла у вас будет что-то вроде x, y = x.cuda(), y.cuda() перемещения мини-пакета на то же устройство, что и модель, с последующим output = model(x) вызовом прямого прохода вашей модели и loss = criterion(output, y) вычислением функции потерь.