В драйвер PanVK добавлена поддержка Vulkan 1.1. Улучшен OpenGL-драйвер Panfrost

Компания Collabora объявила о реализации в драйвере PanVK поддержки графического API Vulkan 1.1 (ранее поддерживалась только версия Vulkan 1.0). Драйвер обеспечивает поддержку графического API Vulkan на устройствах с GPU ARM на базе архитектуры V10, таких как Mali-G610 и Mali-G310. Помимо совместимости с API Vulkan 1.1 в код PanVK добавлена поддержка многих расширений из более новых версий Vulkan, но полная совместимость с Vulkan 1.2 пока не достигнута. Реализованы следующие расширения:

  • VK_KHR_8bit_storage
  • VK_KHR_dedicated_allocation
  • VK_KHR_global_priority 
  • VK_KHR_index_type_uint8
  • VK_KHR_map_memory2 
  • VK_KHR_multiview (v10+)
  • VK_KHR_shader_draw_parameters
  • VK_KHR_shader_float16_int8
  • VK_KHR_shader_non_semantic_info
  • VK_KHR_shader_relaxed_extended_instruction
  • VK_KHR_shader_subgroup_rotate (v10+)
  • VK_KHR_vertex_attribute_divisor
  • VK_KHR_zero_initialize_workgroup_memory
  • VK_EXT_4444_formats
  • VK_EXT_global_priority_query
  • VK_EXT_global_priority 
  • VK_EXT_host_query_reset
  • VK_EXT_image_robustness 
  • VK_EXT_pipeline_robustness
  • VK_EXT_provoking_vertex 
  • VK_EXT_queue_family_foreign
  • VK_EXT_sampler_filter_minmax (v10+)
  • VK_EXT_scalar_block_layout
  • VK_EXT_subgroup_size_control (v10+)
  • VK_EXT_tooling_info

Поддержка Vulkan 1.1 в PanVK уже принята в ветку, на базе которой разрабатывается релиз Mesa 25.0. Кроме того, PanVK включён в список драйверов, доступных для использования в Mesa по умолчанию (ранее PanVK не отображался в списке драйверов и для его использования нужно было выставлять переменную окружения). На системах ARM сборка PanVK включена по умолчанию. Код для поддержки отдельных расширений Vulklan 1.2 передан для включения в основной состав Mesa.

Дополнительно отмечено расширение функциональности открытого OpenGL-драйвера Panfrost, разрабатываемого для GPU ARM Mali параллельно с Vulkan-драйвером PanVK:

  • Для повышения эффективности использования пропускной способности в драйвере включён по умолчанию механизм «transaction elimination», отбрасывающий избыточные операции (например, отбрасываются операции перезаписи фрагментов, не изменившимися с прошлой отрисовки).
  • Добавлена поддержка инкрементальной отрисовки, позволяющая снизить потребление памяти при рендеринге большого числа объектов за счёт раздельной обработки фрагментов (tile).
  • Добавлена поддержка режима AFBC 32×8, применяемого для оптимизации работы с буфером вывода (scan-out buffer) в некоторых дисплейных контроллерах.
  • Максимально поддерживаемая ширина и высота текстур увеличена с 8192 до 32768 пикселей.
  • Добавлена поддержка режима текстурирования MTK_FMT_MOD_TILE_16L32S, при котором фрагментированные данные копируются во временный нефрагментированный буфер перед отрисовкой (используется для работы с аппаратными декодировщиками видео, присутствующими в SoC MediaTek).

Источник: opennet.ru

Купить надежный хостинг для сайтов с защитой от DDoS, VPS VDS серверы 🔥 Купить надежный хостинг для сайтов с защитой от DDoS, VPS VDS серверы | ProHoster