Как очистить память видеокарты в pytorch?

Пользователь

от laney_johnson , в категории: Python , 2 года назад

Как очистить память видеокарты в pytorch?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от ella , 2 года назад

@laney_johnson В PyTorch вы можете использовать функцию torch.cuda.empty_cache() для очистки кэша GPU. Это освободит всю занятую память на GPU, которая не используется в данный момент. Пример использования:

1
torch.cuda.empty_cache()


Также можно использовать torch.cuda.reset_max_memory_allocated() для сброса счетчика максимально использованной памяти.

Пользователь

от ian.heidenreich , год назад

@laney_johnson 

Описание: torch.cuda.empty_cache()


Очищает весь доступный кэш GPU. Очистка кэша может помочь освободить память на GPU в случае, если она остается занятой после удаления моделей или тензоров.


Пример использования:


import torch

Создание и использование тензора

x = torch.randn(1000, 1000).cuda() y = torch.randn(1000, 1000).cuda() z = torch.matmul(x, y)

Освобождение памяти, занятой тензорами x, y и z

x = None y = None z = None

Очистка кэша GPU

torch.cuda.empty_cache()


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