Инструмент просмотра графиков
Вы можете использовать Graph Viewer для визуализации структуры графа вашей программы XLA. Он отображает граф высокоуровневых операций (HLO).

Поддерживаемые платформы
Поддерживаются как TPU, так и GPU.
Компоненты интерфейса
Средство просмотра графиков можно контролировать с помощью следующих опций:
Раскрывающееся меню модулей XLA , в котором можно выбрать модуль HLO из доступного списка для визуализации.
Раскрывающееся меню «Тип графика» , в котором можно выбрать тип графика из списка доступных вариантов.
Поле «Имя операции XLA» , где можно ввести имя операции, чтобы выбрать её в качестве основного узла и визуализировать её соседей. Нажатие Enter после ввода имени операции позволит визуализировать окружающие узлы.
Селектор ширины графика , который управляет максимальным расстоянием узлов от основного узла, включаемого в визуализацию.
Флажок «Показать метаданные» , который позволяет включить или отключить отображение метаданных операции, включённых компилятором, если таковые имеются. Обратите внимание, что после установки этого флажка необходимо снова нажать кнопку «Поиск по графику».
Флажок «Объединить слияние» , который можно использовать для сворачивания или разворачивания компонентов объединённых операций. Обратите внимание, что после установки этого флажка вам потребуется снова нажать «Схема поиска».
Кнопки или клавиши увеличения/уменьшения масштаба/сброса, хотя для изменения масштаба можно использовать и мышь.
Используя функцию поиска, вы можете быстро находить и концентрироваться на определенных операциях в потенциально большом графике.
Чтобы заморозить панель данных времени выполнения на определенной операции, щелкните по ней.
Загрузите модуль HLO в формате .pb, .pbtxt, короткого текста и длинного текста с помощью значка «Загрузить/Сохранить» рядом с раскрывающимся списком «Модули XLA».
Загрузите график в формате файлов SVG, HTML или DOT, используя ссылки в нижней части окна графика.
Нажмите кнопку Проверить полный текст HLO в верхней части окна просмотра, чтобы выбрать краткое или длинное текстовое представление HLO для графика, что может быть полезно для отладки.

Использование средства просмотра графиков
По умолчанию в Graph Viewer не выбрано ни одной операции, поэтому вы увидите пустой экран. Найдите интересующую операцию, чтобы увеличить её и начать просмотр графика. Часто для этого используется один из других инструментов. Например, Op Profile (Профиль операции) для определения наиболее трудоёмкой операции или Trace Viewer (Просмотр трассировки) для определения причины возникновения пузырька в конвейере. Нажав на операцию в этих инструментах, вы получите прямую ссылку на ту же операцию в Graph Viewer.

Наведя курсор на поле (представляющее операцию HLO), вы часто можете увидеть строку пользовательского кода, соответствующую операции, в которой была определена функция. Эта информация доступна только в том случае, если метаданные предоставлены XProf в ходе многоуровневой обработки , которую ваша программа на Python проходит на пути к генерации исполняемого файла ускорителя.

Обратите внимание, что профилировщик получает информацию уровня HLO из «оптимизированного графа HLO», близкого к точке, где он готов к преобразованию в код, специфичный для ускорителя, бэкендом компилятора. Поэтому Graph Viewer, как и все инструменты XProf, обрабатывает это низкоуровневое внутреннее представление HLO в XLA, а не StableHLO или представление, близкое к фреймворку машинного обучения.
Хотя сам график полностью статичен и напрямую берётся из XLA, даже без запуска программы, Graph Viewer накладывает на него дополнительную информацию о времени выполнения, делая его более полезным. Например, при наведении курсора на операцию в левой части интерфейса появляется раздел, показывающий, сколько раз эта операция была выполнена за время профиля и каково было среднее время её выполнения. Он также вычисляет и отображает различные показатели использования и пропускной способности; они используют статический анализ затрат из XLA для флопс и потреблённых байтов и вычисляют скорость на основе измеренного времени выполнения.