Расширение возможностей профилирования в Zen 6
В рамках подготовки Linux-ядра к выходу процессоров AMD Zen 6, разработчики внедряют поддержку расширенных регистров EILVT (Extended Interrupt Local Vector Table). Согласно патчам, опубликованным Майклом Ларабелом на Phoronix, таблица EILVT для архитектур EPYC Venice будет увеличена вдвое — с четырех до восьми записей. Это критически важно для систем мониторинга производительности, так как EILVT отвечает за выборочную выборку инструкций (IBS) и отчеты об ошибках проверки машины (MCE).
Технические детали и метрики
Ключевое изменение заключается в адаптации кода ядра для динамического отслеживания количества регистров EILVT, а не использования жестко заданных значений. Это позволяет ядру корректно работать с новыми расширениями IBS, которые обещают более точную фильтрацию и анализ производительности в инфраструктуре Linux perf.
| Параметр | Текущее состояние (предшествующие архитектуры) | Нововведение (Zen 6 / EPYC Venice) |
|---|---|---|
| Количество записей EILVT | 4 | 8 (удвоение) |
| Механизм обработки | Статическое определение | Динамическое отслеживание в ядре |
| Основное назначение | IBS и MCE | Расширенный IBS, фильтрация, MCE |
| Планируемый релиз ядра | — | Linux v7.3 |
Значение для разработчиков и энтузиастов
Увеличение количества регистров EILVT напрямую влияет на глубину анализа производительности. Для разработчиков ПО и специалистов по оптимизации это означает возможность использовать более сложные сценарии профилирования с помощью инструмента perf. Новые возможности фильтрации IBS позволят точнее выявлять узкие места в коде, не перегружая систему лишними данными.
Сроки интеграции
Если процесс рецензирования кода пройдет успешно, данные изменения будут включены в цикл разработки ядра Linux v7.3. Это сделает Zen 6 одной из первых архитектур, получивших глубокую аппаратную поддержку на уровне ядра еще до массового выхода процессоров на рынок.
Источник: Phoronix ↗
