
Intel опубликовала в открытом доступе исходный код своего исследовательского проекта под названием AI Flame Graphs. Решение написано на C и доступно на GitHub под лицензией Apache License 2.0.
Это проект, который был запущен для Intel Tiber AI Cloud, чтобы предоставить исследователям больше информации об использовании ИИ‑ускорителей на GPU и аппаратном профилировании всего программного стека. В течение нескольких месяцев проект AI Flame Graphs был внутренним программным проектом Intel.

Решение AI Flame Graphs предназначено для раскрытия профилей производительности Intel GPU на основе аппаратной выборки и создания визуализаций выполнения с помощью flamegraphs. Сюда входят остановки EU, стеки CPU, информация о ядре GPU и многое другое. Проект AI Flame Graphs был запущен для изучения потребностей Intel Data Center GPU Max Series, а затем был расширен на видеокарты Intel Arc B‑Series Battlemage, а также интегрированную графику Lunar Lake Xe2.
Для использования AI Flame Graphs в настоящее время требуются модификации драйвера ядра, включение указателей кадров для встроенного кода, а также всех системных библиотек и поддержка eBPF. Программное обеспечение iaprof не ограничивается профилированием рабочих нагрузок AI, но может также использоваться для профилирования традиционных графических рабочих нагрузок.

«Мы открыли исходный код AI Flame Graphs и протестировали проект на новом оборудовании Intel Battlemage и рабочей нагрузке без ИИ, включая GZDoom. Здорово видеть представление ресурсов CPU и GPU с разрешением до миллисекунд, включая визуальные шаблоны в тепловых картах области пламени, которые можно выбрать для создания flame graph, чтобы просмотреть код. Мы применили эти новые инструменты к GZDoom и объяснили паузы GPU, выбрав соответствующий всплеск CPU и изучив flame graph, а также проанализировали использование кода GPU для произвольных временных интервалов», — пояснил инженер Intel Брендан Грегг (пример интерактивной версии GPU flame graph).