Κυκλοφορία του Mesa 19.3.0, μια δωρεάν εφαρμογή των OpenGL και Vulkan

Εισήχθη κυκλοφορία μιας δωρεάν υλοποίησης του OpenGL και του Vulkan API - Mesa 19.3.0. Η πρώτη έκδοση του κλάδου Mesa 19.3.0 έχει πειραματική κατάσταση - μετά την τελική σταθεροποίηση του κώδικα, θα κυκλοφορήσει μια σταθερή έκδοση 19.3.1. Στο Μέσα 19.3 εφαρμόστηκε полная поддержка OpenGL 4.6 для GPU Intel (драйверы i965, iris), поддержка OpenGL 4.5 для GPU AMD (r600, radeonsi) и NVIDIA (nvc0), а также поддержка Vulkan 1.1 для карт Intel и AMD. Вчера изменения для поддержки OpenGL 4.6 также προστέθηκε в драйвер radeonsi, но в ветку Mesa 19.3 они не вошли.

Μεταξύ αλλαγές:

  • Для RADV (Vulkan-драйвер для чипов AMD) предложен новый бэкенд для компиляции шейдеров «ACO«, который развивается компанией Valve в качестве альтернативы компилятору шейдеров LLVM. Бэкенд нацелен на обеспечение генерации кода, насколько это возможно оптимального для шейдеров игровых приложений, а также на достижение очень высокой скорости компиляции. ACO написан на языке С++, разрабатывается с оглядкой на возможность применения для JIT-компиляции и использует быстрые для перебора структуры данных, избегая структур на основе указателей. Промежуточное представление кода полностью основывается на SSA (Static Single Assignment) и позволяет выполнять распределение регистров, точно предварительно вычисляя регистр в зависимости от шейдера. ACO может быть активирован для GPU Vega 8, Vega 9, Vega 10 и Navi 10 через выставление переменной окружения «RADV_PERFTEST=aco»;
  • В кодовую базу включён Gallium3D-драйвер Zink, реализующий API OpenGL поверх Vulkan. Zink позволяет получить аппаратно ускоренный OpenGL при наличии в системе драйверов, ограниченных поддержкой только API Vulkan;
  • В Vulkan-драйвере ANV и OpenGL-драйвере iris реализована начальная поддержка 12 поколения чипов Intel (Tiger Lake, gen12). В ядро Linux, компоненты для поддержки Tiger Lake, включены начиная с выпуска 5.4;
  • В драйверах i965 и iris обеспечена поддержка промежуточного представления шейдеров SPIR-V, что позволило добиться в данных драйверах полной поддержки OpenGL 4.6;
  • В драйвер RadeonSI добавлена поддержка GPU AMD Navi 14 и улучшены средства ускорения декодирования видео, например, добавлена поддержка декодирования видео с разрешением 8K в форматах H.265 и VP9;
  • В Vulkan-драйвер RADV добавлена поддержка режима защищённой компиляции, в котором запускаемые для компиляции шейдеров потоки изолируются при помощи механизма seccomp. Режим включается при помощи переменной окружения RADV_SECURE_COMPILE_THREADS;
  • В драйверах для чипов AMD задействован появившийся в модуле ядра AMDGPU программный интерфейс для сброса GPU;
  • Проведена работа по повышению производительности на системах с APU AMD Radeon. Также повышена производительность Gallium3D-драйвера Iris для GPU Intel;
  • Στο πρόγραμμα οδήγησης Gallium3D LLVMpipe, το οποίο παρέχει απόδοση λογισμικού, εμφανίστηκε поддержка вычислительных шейдеров;
  • Система кэширования шейдеров на диске βελτιστοποιημένη для систем, включающих больше 4 ядер CPU;
  • Обеспечено применение системы сборки Meson для компиляции в Windows с использованием MSVC и MinGW. Использование для сборки scons объявлено устаревшим для систем, отличных от Windows;
  • Реализовано EGL-расширение EGL_EXT_image_flush_external;
  • Προστέθηκαν νέες επεκτάσεις OpenGL:
  • Προστέθηκαν επεκτάσεις στο πρόγραμμα οδήγησης RADV Vulkan (για κάρτες AMD):
  • Προστέθηκαν επεκτάσεις στο πρόγραμμα οδήγησης ANV Vulkan (για κάρτες Intel):

Επιπλέον, μπορεί να σημειωθεί δημοσίευση компанией AMD τεκμηρίωση по архитектуре команд APU «Vega» 7nm на базе микроархитектуры GCN (Graphics Core Next).

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο