Инструмент анализа линии крыши
Инструмент Roofline Analysis предлагает интуитивно понятную визуальную модель производительности, которую вы можете использовать, чтобы понять присущие аппаратные ограничения, влияющие на производительность вашей программы. В частности, основное внимание уделяется тому, привязана ли программа к памяти или к вычислениям, а также насколько близка производительность программы к теоретической пиковой производительности оборудования, представленной как «линия крыши».
Поддерживаемые платформы
ТПУ: Поддерживается
Графический процессор: поддерживается (в бета-версии)
Что такое диаграмма линии крыши
Диаграмма крыши визуализирует взаимосвязь между эксплуатационной интенсивностью (флопс на байт доступа) и достигнутым количеством флопсов в секунду.
\[ Roofline = min(Operational Intensity \times Peak Memory Bandwidth, Peak FLOPS) \]
Форма «крыши» формируется меньшим из пиковых FLOPS и производительностью, достижимой с учетом пропускной способности памяти и интенсивности работы. Точка гребня указывает на минимальную эксплуатационную интенсивность, необходимую для достижения пиковых FLOPS.
Дополнительную информацию о моделях линии крыши можно узнать в книге «Линия крыши: содержательная модель визуальной производительности для программ с плавающей запятой и многоядерных архитектурах» или в теме «Модель линии крыши» в Википедии.
Интерпретация диаграммы линии крыши
Отобразив интенсивность эксплуатации и достигнутые FLOPS для различных этапов, частей программы или отдельных операций HLO на диаграмме линии крыши, вы можете получить представление об узких местах производительности:
- Если точка данных находится на наклонной части линии крыши, производительность, скорее всего, ограничена пропускной способностью памяти (привязанной к памяти). Увеличение эксплуатационной интенсивности (выполнение большего количества вычислений на байт доступных данных) потенциально может повысить производительность.
- Если точка данных лежит на плоской части линии крыши, производительность, скорее всего, будет ограничена вычислительными возможностями (привязанными к вычислениям). В этом случае дальнейшее увеличение эксплуатационной интенсивности может не привести к значительному увеличению производительности, если не удастся лучше использовать пиковые FLOPS оборудования.
- Расстояние точки данных от линии крыши указывает на потенциал улучшения производительности. Большее расстояние говорит о том, что есть возможности оптимизировать программу, чтобы лучше использовать возможности оборудования.
Компоненты интерфейса
Интерфейс инструмента «Анализ линии крыши» состоит из нескольких ключевых компонентов:
- В разделе «Информация об устройстве» описываются характеристики оборудования; они используются для статического рисования «линий крыши» на карте.
- Диаграмма линии крыши на уровне программы с точками данных, соответствующими следующему:
- Общая продолжительность профиля.
- Общая продолжительность профиля, но с данными FLOPS/s, полученными из аппаратных счетчиков производительности, а не из моделей стоимости по умолчанию, рассчитанных компилятором XLA.
- Среднее число полных шагов, выполненных за время действия профиля (для заданий обучения; вы можете игнорировать терминологию шагов для заданий вывода).
- Каждый полный шаг, выполненный во время действия профиля (для заданий обучения; вы можете игнорировать терминологию шагов для заданий вывода).
- Схема линии крыши также имеет следующие особенности:
- Вы можете включить или исключить операции подачи/выгрузки, используя раскрывающийся список.
- При наведении курсора на любую точку данных на диаграмме отображается дополнительная важная информация, такая как показатели пропускной способности для различных типов памяти, общее затраченное время и т. д.
- Таблица статистики на уровне программы, которая предоставляет дополнительные сведения для каждой точки данных, такие как максимальный процент использования памяти, пиковая частота FLOP и т. д.
- Вторая диаграмма линий крыши, предоставляющая более подробную информацию, с точками данных, нанесенными для 1000 самых трудоемких операций за период профилирования:
- Как и в случае с диаграммой линий крыши на уровне программы, при наведении курсора на каждую точку данных отображается дополнительная информация об этой операции.
- Вы можете настроить точки данных, показанные на диаграмме, следующими способами:
- Включение/исключение операций подачи и выгрузки через раскрывающийся список.
- Фильтрация по определенным категориям операций.
- Фильтрация операций, связанных с определенным ресурсом.
- Фильтрация для конкретной именованной операции.
- Вторая таблица статистики, аналогичная таблице уровня программы, предоставляющая дополнительные сведения для каждой точки данных.
Во всех описанных выше разделах поддерживаются следующие памяти:
- Для TPU: HBM, VMEM, CMEM (только TPU v4).
- Для графических процессоров: HBM, L1/SharedMem.
- Соответствующие линии на диаграмме появляются только в том случае, если в пределах продолжительности профиля были какие-либо операции, связанные с этой памятью. Например, если все операции привязаны либо к HBM, либо к вычислениям, вы не увидите строк для VMEM или CMEM.
Инструмент анализа линии крыши
Инструмент Roofline Analysis предлагает интуитивно понятную визуальную модель производительности, которую вы можете использовать, чтобы понять присущие аппаратные ограничения, влияющие на производительность вашей программы. В частности, основное внимание уделяется тому, привязана ли программа к памяти или к вычислениям, а также насколько близка производительность программы к теоретической пиковой производительности оборудования, представленной как «линия крыши».
Поддерживаемые платформы
ТПУ: Поддерживается
Графический процессор: поддерживается (в бета-версии)
Что такое диаграмма линии крыши
Диаграмма крыши визуализирует взаимосвязь между эксплуатационной интенсивностью (флопс на байт доступа) и достигнутым количеством флопсов в секунду.
\[ Roofline = min(Operational Intensity \times Peak Memory Bandwidth, Peak FLOPS) \]
Форма «крыши» формируется меньшим из пиковых FLOPS и производительностью, достижимой с учетом пропускной способности памяти и интенсивности работы. Точка гребня указывает на минимальную эксплуатационную интенсивность, необходимую для достижения пиковых FLOPS.
Дополнительную информацию о моделях линии крыши можно узнать в книге «Линия крыши: содержательная модель визуальной производительности для программ с плавающей запятой и многоядерных архитектурах» или в теме «Модель линии крыши» в Википедии.
Интерпретация диаграммы линии крыши
Отобразив интенсивность эксплуатации и достигнутые FLOPS для различных этапов, частей программы или отдельных операций HLO на диаграмме линии крыши, вы можете получить представление об узких местах производительности:
- Если точка данных находится на наклонной части линии крыши, производительность, скорее всего, ограничена пропускной способностью памяти (привязанной к памяти). Увеличение эксплуатационной интенсивности (выполнение большего количества вычислений на байт доступных данных) потенциально может улучшить производительность.
- Если точка данных лежит на плоской части линии крыши, производительность, скорее всего, будет ограничена вычислительными возможностями (привязанными к вычислениям). В этом случае дальнейшее увеличение эксплуатационной интенсивности может не привести к значительному увеличению производительности, если не удастся лучше использовать пиковые FLOPS оборудования.
- Расстояние точки данных от линии крыши указывает на потенциал улучшения производительности. Большее расстояние говорит о том, что есть возможности оптимизировать программу, чтобы лучше использовать возможности оборудования.
Компоненты интерфейса
Интерфейс инструмента «Анализ линии крыши» состоит из нескольких ключевых компонентов:
- В разделе «Информация об устройстве» описываются характеристики оборудования; они используются для статического рисования «линий крыши» на карте.
- Диаграмма линии крыши на уровне программы с точками данных, соответствующими следующему:
- Общая продолжительность профиля.
- Общая продолжительность профиля, но с данными FLOPS/s, полученными из аппаратных счетчиков производительности, а не из моделей стоимости по умолчанию, рассчитанных компилятором XLA.
- Среднее число полных шагов, выполненных за время действия профиля (для заданий обучения; вы можете игнорировать терминологию шагов для заданий вывода).
- Каждый полный шаг, выполненный во время действия профиля (для заданий обучения; вы можете игнорировать терминологию шагов для заданий вывода).
- Схема линии крыши также имеет следующие особенности:
- Вы можете включить или исключить операции подачи/выгрузки, используя раскрывающийся список.
- При наведении курсора на любую точку данных на диаграмме отображается дополнительная важная информация, такая как показатели пропускной способности для различных типов памяти, общее затраченное время и т. д.
- Таблица статистики на уровне программы, которая предоставляет дополнительные сведения для каждой точки данных, такие как максимальный процент использования памяти, пиковая частота FLOP и т. д.
- Вторая диаграмма линий крыши, предоставляющая более подробную информацию, с точками данных, нанесенными для 1000 самых трудоемких операций за период профилирования:
- Как и в случае с диаграммой линий крыши на уровне программы, при наведении курсора на каждую точку данных отображается дополнительная информация об этой операции.
- Вы можете настроить точки данных, показанные на диаграмме, следующими способами:
- Включение/исключение операций подачи и выгрузки через раскрывающийся список.
- Фильтрация по определенным категориям операций.
- Фильтрация операций, связанных с определенным ресурсом.
- Фильтрация для конкретной именованной операции.
- Вторая таблица статистики, аналогичная таблице уровня программы, предоставляющая дополнительные сведения для каждой точки данных.
Во всех описанных выше разделах поддерживаются следующие памяти:
- Для TPU: HBM, VMEM, CMEM (только TPU v4).
- Для графических процессоров: HBM, L1/SharedMem.
- Соответствующие линии на диаграмме появляются только в том случае, если в пределах продолжительности профиля были какие-либо операции, связанные с этой памятью. Например, если все операции привязаны либо к HBM, либо к вычислениям, вы не увидите строк для VMEM или CMEM.
Инструмент анализа линии крыши
Инструмент Roofline Analysis предлагает интуитивно понятную визуальную модель производительности, которую вы можете использовать, чтобы понять присущие аппаратные ограничения, влияющие на производительность вашей программы. В частности, основное внимание уделяется тому, привязана ли программа к памяти или к вычислениям, а также насколько близка производительность программы к теоретической пиковой производительности оборудования, представленной как «линия крыши».
Поддерживаемые платформы
ТПУ: Поддерживается
Графический процессор: поддерживается (в бета-версии)
Что такое диаграмма линии крыши
Диаграмма крыши визуализирует взаимосвязь между эксплуатационной интенсивностью (флопс на байт доступа) и достигнутым количеством флопсов в секунду.
\[ Roofline = min(Operational Intensity \times Peak Memory Bandwidth, Peak FLOPS) \]
Форма «крыши» формируется меньшим из пиковых FLOPS и производительностью, достижимой с учетом пропускной способности памяти и интенсивности работы. Точка гребня указывает на минимальную эксплуатационную интенсивность, необходимую для достижения пиковых FLOPS.
Дополнительную информацию о моделях линии крыши можно узнать в книге «Линия крыши: содержательная модель визуальной производительности для программ с плавающей запятой и многоядерных архитектурах» или в теме «Модель линии крыши» в Википедии.
Интерпретация диаграммы линии крыши
Отобразив интенсивность эксплуатации и достигнутые FLOPS для различных этапов, частей программы или отдельных операций HLO на диаграмме линии крыши, вы можете получить представление об узких местах производительности:
- Если точка данных находится на наклонной части линии крыши, производительность, скорее всего, ограничена пропускной способностью памяти (привязанной к памяти). Увеличение эксплуатационной интенсивности (выполнение большего количества вычислений на байт доступных данных) потенциально может улучшить производительность.
- Если точка данных лежит на плоской части линии крыши, производительность, скорее всего, будет ограничена вычислительными возможностями (привязанными к вычислениям). В этом случае дальнейшее увеличение эксплуатационной интенсивности может не привести к значительному увеличению производительности, если не удастся лучше использовать пиковые FLOPS оборудования.
- Расстояние точки данных от линии крыши указывает на потенциал улучшения производительности. Большее расстояние говорит о том, что есть возможности оптимизировать программу, чтобы лучше использовать возможности оборудования.
Компоненты интерфейса
Интерфейс инструмента «Анализ линии крыши» состоит из нескольких ключевых компонентов:
- В разделе «Информация об устройстве» описываются характеристики оборудования; они используются для статического рисования «линий крыши» на карте.
- Диаграмма линии крыши на уровне программы с точками данных, соответствующими следующему:
- Общая продолжительность профиля.
- Общая продолжительность профиля, но с данными FLOPS/s, полученными из аппаратных счетчиков производительности, а не из моделей стоимости по умолчанию, рассчитанных компилятором XLA.
- Среднее число полных шагов, выполненных за время действия профиля (для заданий обучения; вы можете игнорировать терминологию шагов для заданий вывода).
- Каждый полный шаг, выполненный во время действия профиля (для заданий обучения; вы можете игнорировать терминологию шагов для заданий вывода).
- Схема линии крыши также имеет следующие особенности:
- Вы можете включить или исключить операции подачи/выгрузки, используя раскрывающийся список.
- При наведении курсора на любую точку данных на диаграмме отображается дополнительная важная информация, такая как показатели пропускной способности для различных типов памяти, общее затраченное время и т. д.
- Таблица статистики на уровне программы, которая предоставляет дополнительные сведения для каждой точки данных, такие как максимальный процент использования памяти, пиковая частота FLOP и т. д.
- Вторая диаграмма линий крыши, предоставляющая более подробную информацию, с точками данных, нанесенными для 1000 самых трудоемких операций за период профилирования:
- Как и в случае с диаграммой линий крыши на уровне программы, при наведении курсора на каждую точку данных отображается дополнительная информация об этой операции.
- Вы можете настроить точки данных, показанные на диаграмме, следующими способами:
- Включение/исключение операций подачи и выгрузки через раскрывающийся список.
- Фильтрация по определенным категориям операций.
- Фильтрация операций, связанных с определенным ресурсом.
- Фильтрация для конкретной именованной операции.
- Вторая таблица статистики, аналогичная таблице уровня программы, предоставляющая дополнительные сведения для каждой точки данных.
Во всех описанных выше разделах поддерживаются следующие памяти:
- Для TPU: HBM, VMEM, CMEM (только TPU v4).
- Для графических процессоров: HBM, L1/SharedMem.
- Соответствующие линии на диаграмме появляются только в том случае, если в пределах продолжительности профиля были какие-либо операции, связанные с этой памятью. Например, если все операции привязаны либо к HBM, либо к вычислениям, вы не увидите строк для VMEM или CMEM.
Инструмент анализа линии крыши
Инструмент Roofline Analysis предлагает интуитивно понятную визуальную модель производительности, которую вы можете использовать, чтобы понять присущие аппаратные ограничения, влияющие на производительность вашей программы. В частности, основное внимание уделяется тому, привязана ли программа к памяти или к вычислениям, а также насколько близка производительность программы к теоретической пиковой производительности оборудования, представленной как «линия крыши».
Поддерживаемые платформы
ТПУ: Поддерживается
Графический процессор: поддерживается (в бета-версии)
Что такое диаграмма линии крыши
Диаграмма крыши визуализирует взаимосвязь между эксплуатационной интенсивностью (флопс на байт доступа) и достигнутым количеством флопсов в секунду.
\[ Roofline = min(Operational Intensity \times Peak Memory Bandwidth, Peak FLOPS) \]
Форма «крыши» формируется меньшим из пиковых FLOPS и производительностью, достижимой с учетом пропускной способности памяти и интенсивности работы. Точка гребня указывает на минимальную эксплуатационную интенсивность, необходимую для достижения пиковых FLOPS.
Дополнительную информацию о моделях линии крыши можно узнать в книге «Линия крыши: содержательная модель визуальной производительности для программ с плавающей запятой и многоядерных архитектурах» или в теме «Модель линии крыши» в Википедии.
Интерпретация диаграммы линии крыши
Отобразив интенсивность эксплуатации и достигнутые FLOPS для различных этапов, частей программы или отдельных операций HLO на диаграмме линии крыши, вы можете получить представление об узких местах производительности:
- Если точка данных находится на наклонной части линии крыши, производительность, скорее всего, ограничена пропускной способностью памяти (привязанной к памяти). Увеличение эксплуатационной интенсивности (выполнение большего количества вычислений на байт доступных данных) потенциально может улучшить производительность.
- Если точка данных лежит на плоской части линии крыши, производительность, скорее всего, будет ограничена вычислительными возможностями (привязанными к вычислениям). В этом случае дальнейшее увеличение эксплуатационной интенсивности может не привести к значительному увеличению производительности, если не удастся более эффективно использовать пиковые FLOPS оборудования.
- Расстояние точки данных от линии крыши указывает на потенциал улучшения производительности. Большее расстояние говорит о том, что есть возможности оптимизировать программу, чтобы лучше использовать возможности оборудования.
Компоненты интерфейса
Интерфейс инструмента «Анализ линии крыши» состоит из нескольких ключевых компонентов:
- В разделе «Информация об устройстве» описываются характеристики оборудования; они используются для статического рисования «линий крыши» на карте.
- Диаграмма линии крыши на уровне программы с точками данных, соответствующими следующему:
- Общая продолжительность профиля.
- Общая продолжительность профиля, но с данными FLOPS/s, полученными из аппаратных счетчиков производительности, а не из моделей стоимости по умолчанию, рассчитанных компилятором XLA.
- Среднее число полных шагов, выполненных за время действия профиля (для заданий обучения; терминологию шагов для заданий вывода можно игнорировать).
- Каждый полный шаг, выполненный во время действия профиля (для заданий обучения; вы можете игнорировать терминологию шагов для заданий вывода).
- Схема линии крыши также имеет следующие особенности:
- Вы можете включить или исключить операции подачи/выгрузки, используя раскрывающийся список.
- При наведении курсора на любую точку данных на диаграмме отображается дополнительная важная информация, такая как показатели пропускной способности для различных типов памяти, общее затраченное время и т. д.
- Таблица статистики на уровне программы, которая предоставляет дополнительную информацию для каждой точки данных, например, максимальный процент использования памяти, пиковую частоту FLOP и т. д.
- Вторая диаграмма линий крыши, предоставляющая более подробную информацию, с точками данных, нанесенными для 1000 самых трудоемких операций за период профилирования:
- Как и в случае с диаграммой линий крыши на уровне программы, при наведении курсора на каждую точку данных отображается дополнительная информация об этой операции.
- Вы можете настроить точки данных, показанные на диаграмме, следующими способами:
- Включение/исключение операций подачи и выгрузки через раскрывающийся список.
- Фильтрация по определенным категориям операций.
- Фильтрация операций, связанных с определенным ресурсом.
- Фильтрация для конкретной именованной операции.
- Вторая таблица статистики, аналогичная таблице уровня программы, предоставляющая дополнительные сведения для каждой точки данных.
Во всех описанных выше разделах поддерживаются следующие памяти:
- Для TPU: HBM, VMEM, CMEM (только TPU v4).
- Для графических процессоров: HBM, L1/SharedMem.
- Соответствующие линии на диаграмме появляются только в том случае, если в пределах продолжительности профиля были какие-либо операции, связанные с этой памятью. Например, если все операции привязаны либо к HBM, либо к вычислениям, вы не увидите строк для VMEM или CMEM.