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

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

Использование Graph Viewer
По умолчанию в окне просмотра графа не выбраны никакие операции, поэтому вы увидите пустой экран. Найдите интересующую вас операцию, чтобы увеличить масштаб и начать обход графа. Часто вы начинаете с одного из других инструментов. К ним относятся:
- Профиль операции HLO позволяет определить наиболее трудоемкую операцию.
- Используйте Trace Viewer для определения причины возникновения «пузыря» в трубопроводе.
- Программа просмотра памяти позволяет увидеть операции HLO в пиковое время выделения памяти.
Нажатие на операцию в этих инструментах предоставит вам прямую ссылку на ту же операцию в Graph Viewer.

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

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