#python #machine-learning #deep-learning #pytorch #out-of-memory
#python #машинное обучение #глубокое обучение #pytorch #нехватка памяти
Вопрос:
Кто-нибудь может помочь мне объяснить значение этой распространенной проблемы в Pytorch?
Модель: EfficientDet-D4
Графический процессор: RTX 2080Ti
Размер пакета: 2
CUDA out of memory. Tried to allocate 14.00 MiB (GPU 0; 11.00 GiB total capacity; 8.32 GiB already allocated; 2.59 MiB free; 8.37 GiB reserved in total by PyTorch)
В любом случае, я думаю, что модель и графический процессор здесь не важны, и я знаю, что решением должно быть уменьшение размера пакета, попытка отключить градиент при проверке и т. Д. Но я просто хочу знать, в чем смысл 8.32 GiB
while у меня есть 11 GiB
, но я не могу выделить 14.00 MiB
больше?
Дополнение: я пытаюсь наблюдать nvidia-smi
во время тренировки с размером пакета = 1, что потребовалось 9.5 GiB
для моего графического процессора.
Комментарии:
1. Можете ли вы проверить процессы, которые используют память вашего графического процессора? Существует ли какой-либо предыдущий процесс-призрак, который уже занимал память в устройстве GPU?
2. Я перезапускаю ядро, убиваю все процессы после каждой попытки, поэтому я уверен, что там ничего нет (даже пытаюсь перезагрузить мой компьютер)
3. Вы можете увидеть использование графического процессора с помощью
nvidia-smi
4. @Tomer, я это знаю, но он просто поднял до 10 ГБ, а затем выпустил все после появления ошибки, я отредактирую вопрос
5. попробуйте
torch.cuda.empty_cache()
и расскажите нам, как это происходит.
Ответ №1:
У меня есть ответ от @ptrblck в сообществе Pytorch. Там я описал свой вопрос более подробно, чем этот вопрос.
Пожалуйста, проверьте ответ здесь .