В драйвера PanVK добавена поддръжка за Vulkan 1.1. Подобрен е OpenGL драйверът Panfrost

Компанията Collabora обяви реализирането на поддръжка на графичния API Vulkan 1.1 в драйвера PanVK (преди това се поддържаше само версия 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 е включена по подразбиране. Кодът за поддръжка на отделни разширения Vulkan 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