Техническая суть обновления
Инженер Valve Георг Леманн (Georg Lehmann) отправил в ветку Mesa 27.0-devel серию из 17 патчей, которые расширяют поддержку архитектуры GFX8 (от GCN Volcanic Islands до Polaris). Ключевое изменение — включение поддержки D16 (16-bit data modifier) как в открытом OpenGL-драйвере RadeonSI, так и в Vulkan-драйвере RADV.
Ранее поддержка D16 была доступна только для архитектур GFX9 и новее. Теперь же компилятор ACO научился использовать эту функцию для более эффективного управления регистрами и снижением давления на пропускную способность памяти видеокарт старшего поколения.
Почему это важно для пользователей
Архитектура GFX8 уже давно не является флагманской, но она остается очень распространенной благодаря широкому распространению карт серии Radeon R9 и RX 400/500. Главная польза от D16 заключается в оптимизации работы с 16-битными значениями (FP16). Это критически важно для запуска игр, использующих Direct3D 12, через слой совместимости VKD3D-Proton в Linux.
Использование упакованных 16-битных значений вместо 32-битных позволяет:
- Снизить нагрузку на шину памяти (memory bandwidth pressure).
- Повысить эффективность использования регистров GPU.
- Улучшить общую производительность в играх, требующих FP16 вычислений.
Сравнение поддержки D16 по поколениям AMD GPU
| Архитектура (GPU) | Примеры видеокарт | Поддержка D16 в Mesa до обновления | Поддержка D16 в Mesa 27.0+ |
|---|---|---|---|
| GFX8 (Volcanic Islands / Polaris) | R9 200/300, RX 400/500 | Нет | Да (RadeonSI & RADV) |
| GFX9 (Vega / RDNA 1) | Radeon VII, RX 5700 | Да | Да |
| GFX10+ (RDNA 2/3) | RX 6000/7000 | Да | Да |
Детали интеграции
Объединение кода (merge) завершает процесс адаптации компилятора ACO для работы с D16 на оборудовании GFX8. Это означает, что разработчики игр и портирующие движки могут рассчитывать на более плавную работу в среде Linux без необходимости ручного тюнинга или использования обходных путей для оптимизации памяти. Обновление доступно в текущих сборках Mesa 27.0-devel, что предвещает его скорое появление в стабильных релизах дистрибутивов.
Источник: Phoronix ↗
