РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
697 of 769 menu

Функция cuda.reset_peak_memory_stats

Функция cuda.reset_peak_memory_stats сбрасывает пиковые значения статистики памяти для указанного устройства CUDA. Она обнуляет значения, которые возвращают функции cuda.max_memory_allocated и cuda.max_memory_reserved. Параметр device указывает целевое устройство (по умолчанию - текущее устройство). Это позволяет изолированно измерять пиковое потребление памяти на определённых участках кода.

Синтаксис

torch.cuda.reset_peak_memory_stats(device=None)

Пример

Давайте сбросим пиковые значения памяти перед выполнением основного кода:

import torch torch.manual_seed(0) device = 'cuda' if torch.cuda.is_available() else 'cpu' torch.cuda.reset_peak_memory_stats() print("Peak memory allocated after reset:", torch.cuda.max_memory_allocated()) t = torch.randn(1000, 1000).to(device) print("Peak memory allocated after tensor creation:", torch.cuda.max_memory_allocated())

Результат выполнения кода:

Peak memory allocated after reset: 0 Peak memory allocated after tensor creation: 4000000

Пример

Давайте используем функцию для измерения пиковой памяти на конкретном участке кода:

import torch torch.manual_seed(0) device = 'cuda' if torch.cuda.is_available() else 'cpu' t = torch.randn(500, 500).to(device) torch.cuda.reset_peak_memory_stats() for i in range(5): res = t * 2 print("Peak memory allocated after loop:", torch.cuda.max_memory_allocated())

Результат выполнения кода:

Peak memory allocated after loop: 1000000

Пример

Давайте сбросим пиковые значения для конкретного устройства:

import torch torch.manual_seed(0) if torch.cuda.is_available(): torch.cuda.set_device(0) t = torch.randn(2000, 2000).to('cuda:0') torch.cuda.reset_peak_memory_stats(device=0) print("Peak memory after reset on device 0:", torch.cuda.max_memory_allocated(0))

Результат выполнения кода:

Peak memory after reset on device 0: 0

Смотрите также

  • функцию memory_allocated,
    которая возвращает текущее количество выделенной памяти
  • функцию max_memory_allocated,
    которая возвращает пиковое значение выделенной памяти
  • функцию memory_reserved,
    которая возвращает текущий объём зарезервированной памяти
  • функцию max_memory_reserved,
    которая возвращает пиковое значение зарезервированной памяти
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить