Do ovládača PanVK bola pridaná podpora pre Vulkan 1.1. Vylepšený ovládač OpenGL Panfrost

Spoločnosť Collabora oznámila implementáciu podpory grafického API Vulkan 1.1 v ovládači PanVK (predtým bola podporovaná iba verzia Vulkan 1.0). Ovládač zabezpečuje podporu grafického API Vulkan na zariadeniach s GPU ARM na architektúre V10, ako sú Mali-G610 a Mali-G310. Okrem kompatibility s API Vulkan 1.1 boli do kódu PanVK pridané podpory mnohých rozšírení z novších verzií Vulkan, no plná kompatibilita s Vulkan 1.2 zatiaľ nebola dosiahnutá. Realizované boli nasledujúce rozšírenia:

  • 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

Podpora Vulkan 1.1 v PanVK už bola prijatá do vetvy, na základe ktorej sa vyvíja vydanie Mesa 25.0. Okrem toho je PanVK zaradený do zoznamu ovládačov, ktoré sú predvolene dostupné pre použitie v Mesa (predtým sa PanVK nezobrazoval v zozname ovládačov a na jeho používanie bolo potrebné nastaviť premennú prostredia). Na systémoch ARM je zostavenie PanVK predvolene zapnuté. Kód pre podporu jednotlivých rozšírení Vulkan 1.2 bol zaslaný na zaradenie do hlavného zloženia Mesa.

Okrem toho bola zaznamenaná expanzia funkčnosti otvoreného ovládača OpenGL Panfrost, ktorý sa vyvíja pre GPU ARM Mali súbežne s ovládačom Vulkan PanVK:

  • Aby sa zvýšila efektívnosť využitia priepustnosti, bol do ovládača predvolene zahrnutý mechanizmus „transaction elimination“, ktorý likviduje nadbytočné operácie (napríklad sa eliminujú operácie prepisovania fragmentov, ktoré sa nezmenili od predchádzajúcej kresby).
  • Pridaná podpora inkrementálneho vykresľovania, ktorá umožňuje zníženie spotreby pamäte pri renderovaní veľkého počtu objektov prostredníctvom samostatného spracovania fragmentov (tile).
  • Pridaná podpora režimu AFBC 32×8, ktorý sa používa na optimalizáciu práce s výstupným bufferom (scan-out buffer) v niektorých displejových ovládačoch.
  • Maximálne podporovaná šírka a výška textúr bola zvýšená z 8192 na 32768 pixelov.
  • Pridaná podpora pre režim textúrovania MTK_FMT_MOD_TILE_16L32S, pri ktorom sa fragmentované dáta kopírujú do dočasného nefragmentovaného bufferu pred vykreslením (používa sa pre prácu s hardvérovými dekodérmi videa prítomnými v SoC MediaTek).

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster