Spec-Zone.ru › PyTorch 2

torch._logging

В PyTorch реализована настраиваемая система логирования, где различным компонентам могут быть заданы разные уровни логов. Например, сообщения логов одного компонента могут быть полностью отключены, в то время как сообщения логов другого компонента могут быть настроены на максимальную подробность.

Предупреждение

Эта функция является прототипом и в будущем может иметь изменения, нарушающие совместимость.

Предупреждение

Функциональность управления сообщениями логов всех компонентов в PyTorch пока не расширена.

Существует два способа настройки системы логирования: через переменную окружения TORCH_LOGS или через API Python torch._logging.set_logs.

set_logs

Устанавливает уровень логов для отдельных компонентов и включает/выключает типы артефактов логов.

Переменная окружения TORCH_LOGS представляет собой список пар [+-]<component>, разделённых запятыми, где <component> — это компонент, указанный ниже. Префикс + понизит уровень логов компонента, отображая больше сообщений логов, в то время как префикс - повысит уровень логов компонента и отобразит меньше сообщений логов. Значение по умолчанию соответствует поведению, когда компонент не указан в TORCH_LOGS. Помимо компонентов, существуют также артефакты. Артефакты — это специфичные фрагменты отладочной информации, связанные с компонентом, которые либо отображаются, либо нет; поэтому добавление префикса + или - к артефакту не повлияет на его поведение. Поскольку они связаны с компонентом, включение компонента обычно также включает соответствующий артефакт, если этот артефакт не был явно задан как off_by_default. Этот параметр указан в _registrations.py для артефактов, которые настолько многословны, что должны отображаться только при явном включении. Ниже перечислены настраиваемые компоненты и артефакты через переменную окружения TORCH_LOGS (см. torch._logging.set_logs для API Python):

Компоненты:
all

Специальный компонент, который настраивает уровень логов по умолчанию для всех компонентов. Значение по умолчанию: logging.WARN

dynamo

Уровень логов для компонента TorchDynamo. Значение по умолчанию: logging.WARN

aot

Уровень логов для компонента AOTAutograd. Значение по умолчанию: logging.WARN

inductor

Уровень логов для компонента TorchInductor. Значение по умолчанию: logging.WARN

your.custom.module

Уровень логов для произвольного не зарегистрированного модуля. Укажите полное имя, и модуль будет включен. Значение по умолчанию: logging.WARN

Артефакты:
bytecode

Выводить исходный и сгенерированный байткод из TorchDynamo. Значение по умолчанию: False

aot_graphs

Выводить графы, сгенерированные AOTAutograd. Значение по умолчанию: False

aot_joint_graph

Выводить объединённый граф прямого и обратного распространения, сгенерированный AOTAutograd. Значение по умолчанию: False

ddp_graphs

Выводить графы, сгенерированные DDPOptimizer. Значение по умолчанию: False

graph

Выводить граф, полученный TorchDynamo в табличной форме. Значение по умолчанию: False

graph_code

Выводить исходный код Python графа, полученного TorchDynamo. Значение по умолчанию: False

graph_breaks

Выводить сообщение при обнаружении уникального разрыва графика во время трассировки TorchDynamo. Значение по умолчанию: False

guards

Выводить фильтры, сгенерированные TorchDynamo для каждой скомпилированной функции. Значение по умолчанию: False

recompiles

Выводить причину и сообщение об ошибке фильтра каждый раз, когда TorchDynamo перекомпилирует функцию. Значение по умолчанию: False

output_code

Выводить сгенерированный TorchInductor выходной код. Значение по умолчанию: False

schedule

Выводить расписание TorchInductor. Значение по умолчанию: False

Примеры:

TORCH_LOGS="+dynamo,aot" установит уровень логов TorchDynamo в logging.DEBUG и AOT в logging.INFO

TORCH_LOGS="-dynamo,+inductor" установит уровень логов TorchDynamo в logging.ERROR и TorchInductor в logging.DEBUG

TORCH_LOGS="aot_graphs" включит артефакт aot_graphs

TORCH_LOGS="+dynamo,schedule" установит уровень логов TorchDynamo в logging.DEBUG и включит артефакт schedule

TORCH_LOGS="+some.random.module,schedule" установит уровень логов для some.random.module в logging.DEBUG и включит артефакт schedule

© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/2.1/logging.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API