V gonilnik PanVK je dodana podpora za Vulkan 1.1. Izboljšan OpenGL-gonilnik Panfrost.

Podjetje Collabora je napovedalo implementacijo podpore za grafični API Vulkan 1.1 v gonilniku PanVK (prej je bila podprta le različica Vulkan 1.0). Gonilnik omogoča podporo grafičnega API Vulkan na napravah z GPU ARM, temelječih na arhitekturi V10, kot sta Mali-G610 in Mali-G310. Poleg združljivosti z API Vulkan 1.1 je bila v kodo PanVK dodana podpora za številne razširitve iz novejših različic Vulkan, vendar popolna združljivost z Vulkan 1.2 še ni dosežena. Implementirane so naslednje razširitve:

  • 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 je že vključena v vejo, na osnovi katere se razvija izdaja Mesa 25.0. Poleg tega je PanVK vključen na seznam gonilnikov, ki so na voljo za uporabo v Mesu privzeto (prej PanVK ni bil prikazan na seznamu gonilnikov, za njegovo uporabo je bilo potrebno nastaviti okoljsko spremenljivko). Na sistemih ARM je sestava PanVK privzeto vključena. Koda za podporo posameznih razširitev Vulkan 1.2 je bila posredovana za vključitev v glavni sklop Muse.

Dodatno je bilo omenjeno razširjanje funkcionalnosti odprtega OpenGL gonilnika Panfrost, ki se razvija za GPU ARM Mali vzporedno z Vulkan gonilnikom PanVK:

  • Za povečanje učinkovitosti uporabe pasovne širine je bil v gonilnik privzeto vključen mehanizem „odprava transakcij“, ki odstranjuje odvečne operacije (na primer se zavržejo operacije prepisovanja fragmentov, ki se niso spremenile od prejšnjega risanja).
  • Dodana je podpora za inkrementalno risanje, ki omogoča zmanjšanje porabe pomnilnika pri renderiranju velikega števila predmetov s pomočjo ločenega obdelovanja fragmentov (tile).
  • Dodana je podpora za način AFBC 32×8, ki se uporablja za optimizacijo dela z izhodnim pomnilnikom (scan-out buffer) v nekaterih nadzornih enotah zaslona.
  • Največja podprta širina in višina tekstur sta bila povečana s 8192 na 32768 pikslov.
  • Dodana je podpora za način teksturiranja MTK_FMT_MOD_TILE_16L32S, pri katerem se fragmentirani podatki kopirajo v začasni nefragmentirani proračun pred risanjem (uporablja se za delo s strojno video dekompresijo, ki je prisotna v SoC MediaTek).

Izvor: opennet.ru

Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster