релиз свободной реализации API OpenGL и Vulkan — . Первый выпуск ветки Mesa 20.1.0 имеет экспериментальный статус — после проведения окончательной стабилизации кода будет выпущена стабильная версия 20.1.1. В Mesa 20.1 полная поддержка OpenGL 4.6 для GPU Intel (драйверы i965, iris) и AMD (radeonsi), поддержка OpenGL 4.5 для GPU AMD (r600) и NVIDIA (nvc0), OpenGL 4.3 для virgl (виртуальный GPU для QEMU/KVM), а также поддержка Vulkan 1.2 для карт Intel и AMD.
:
- прослойка для выбора активного устройства для API Vulkan в системах с несколькими GPU с поддержкой Vulkan, работающая по аналогии с DRI_PRIME для OpenGL. Для выбора активного драйвера и GPU предусмотрена переменная окружения MESA_VK_DEVICE_SELECT (если не установлена используется DRI_PRIME).
- В драйверы i965 и iris для GPU Intel добавлена поддержка ожидаемых в следующем году чипов на базе новой микроархитектуры .
- В развиваемый для GPU Intel Vulkan-драйвер ANV оптимизация для чипов на базе микроархитектуры Icelake (Gen11), допускающая использование чистых цветов при текстурировании. При тестировании в Dota2 изменение позволило снизить число операций преобразования цветов на 95% и повысить производительность на 3.5%.
- В Vulkan-драйвере ANV эффективность использования кэша на системах с чипами Intel Ivybridge и Haswell. Использование тестов вычислительных функций Vulkan из набора Geekbench 5 показало прирост производительности на 330% на оборудовании Haswell GT3 (прирост за счёт того, что раньше кэш в некоторых условиях не использовался).
- В драйверы для GPU Intel (, ) режим «чёрной дыры» (OpenGL-расширение INTEL_blackhole_render), отключающий все операции рендеринга, передаваемые GPU, но сохраняющий обработку операций OpenGL.
- Для графических чипов Intel портирована ранее добавленная для чипов AMD поддержка векторизации , бестипового промежуточного представления (IR) шейдеров, нацеленного на работу на самом нижнем уровне, под GLSL IR и внутренним IR Mesa. С практической стороны за счёт более качественной оптимизации шейдеров изменение позволило поднять производительность работы OpenGL и Vulkan во многих играх на системах с GPU Intel. Например, в игре
Rise of the Tomb Raider прирост производительности на 3%, а в Shadow of the Tomb Raider на 10%. - В бэкенд для компиляции шейдеров ««, который развивается компанией Valve в качестве альтернативы компилятору шейдеров LLVM, для GPU GFX9+ добавлена поддержка типа shaderInt16, позволяющего использовать 16-разрядные целые числа в коде шейдеров. Для
GPU AMD Navi (GFX10) применение движков NGG (Next-Gen Geometry) при работе с вершинными и тесселяционными шейдерами. - Для GPU AMD Navi 12 и Navi 14 поддержка режима отображаемого DCC (Delta Сolor Сompression), обеспечивающего работу со сжатыми данными цветов при организации вывода на экран.
- экспериментальная поддержка NIR для классического Gallium3D-драйвера R600 (AMD Radeon HD 2000-6000) с поддержкой геометрических, фрагментных, вершинных и шейдеров.
- В Vulkan драйвер RADV патч за счёт оптимизации работы с памятью увеличивающий производительность игр Id Tech на системах с APU AMD.
- В драйвере Panfrost экспериментальная поддержка OpenGL ES 3.0 и поддержка 3D-рендеринга для GPU Bifrost (Mali G31). Подготовлена начальная реализация компилятора шейдеров, поддерживающего специфичный для GPU Bifrost набор внутренних инструкций.
- В Vulkan-драйвер TURNIP, развиваемый для GPU Qualcomm Adreno, поддержка геометрических шейдеров и .
- В Gallium3D-драйвере LLVMpipe, обеспечивающем программную отрисовку, поддержка тесселяционных шейдеров.
- большая в glthread (многопоточная реализация OpenGL). После внесения изменений производительность гоночного симулятора Torcs выросла на 16% в конфигурации по умолчанию и на 40% при включении glthread.
- опция allow_draw_out_of_order (включается через driconf) для включения оптимизаций для ускорения операций неупорядоченной отрисовки, характерных для САПР. При включении опции в тесте Viewperf11 Catia наблюдается ускорение в 7%.
- Добавлены новые расширения OpenGL:
- для i965.
- для Iris.
- для radeonsi и nvc0.
- для gles2.
- для radeonsi
- для всех gallium-драйверов.
- для всех gallium-драйверов, а также i915, i965 и swrast.
- для nvc0 (GM200+).
- для nvc0 (GM200+).
- В Vulkan-драйвер RADV (для карт AMD) добавлены расширения:
- для карт GFX8+ при использовании бэкенда компиляции шейдеров «ACO»
- для карт GFX8+ при использовании бэкенда компиляции шейдеров «ACO» (за исключение поддержки storageInputOutput16)
- для карт GFX8+ при использовании бэкенда компиляции шейдеров «ACO» (за исключение поддержки storageInputOutput16)
- В Vulkan-драйвер ANV (для карт Intel) добавлены расширения:
Источник: opennet.ru
