I PanVK-driveren tilføjet støtte til Vulkan 1.1. Forbedret OpenGL-driver Panfrost.

Collabora har annonceret implementeringen af støtte til grafiske API Vulkan 1.1 i PanVK-driveren (tidligere var kun Vulkan 1.0 understøttet). Driveren giver støtte til grafiske API Vulkan på enheder med ARM-GPU baseret på V10-arkitekturen, såsom Mali-G610 og Mali-G310. Udover kompatibilitet med API Vulkan 1.1 er der tilføjet støtte til mange udvidelser fra nyere versioner af Vulkan i PanVK-koden, men der er endnu ikke opnået fuld kompatibilitet med Vulkan 1.2. Følgende udvidelser er implementeret:

  • 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

Støtten til Vulkan 1.1 i PanVK er allerede inkluderet i den gren, hvorunder Mesa 25.0 bliver udviklet. Derudover er PanVK nu tilføjet til listen over drivere, der er tilgængelige som standard i Mesa (tidligere blev PanVK ikke vist på listen over drivere, og det krævede at indstille en miljøvariabel at bruge det). På ARM-systemer er PanVK bygges som standard inkluderet. Koden til at understøtte specifikke Vulkan 1.2-udvidelser er sendt til integration i hovedversionen af Mesa.

Derudover er funktionaliteten i den åbne OpenGL-driver Panfrost, der udvikles til ARM Mali-GPU'er, blevet udvidet, samtidig med at Vulkan-driveren PanVK udvikles:

  • For at øge effektiviteten af båndbredde er der som standard inkluderet en mekanisme til "transaction elimination" i driveren, som fjerner overflødige operationer (for eksempel bliver operationer til omskrivning af fragmenter, der ikke har ændret sig siden den sidste rendering, fjernet).
  • Der er tilføjet støtte til inkrementel rendering, som reducerer hukommelsesforbruget ved rendering af et stort antal objekter ved at behandle fragmenter (tiles) separat.
  • Støtten til AFBC 32×8-tilstand er blevet tilføjet, hvilket anvendes til at optimere arbejdet med output-bufferen (scan-out buffer) i nogle display controllere.
  • Den maksimalt understøttede bredde og højde af teksturer er blevet øget fra 8192 til 32768 pixel.
  • Støtten til teksturtilstand MTK_FMT_MOD_TILE_16L32S er blevet tilføjet, hvor fragmenterede data kopieres til en midlertidig ufragmenteret buffer før rendering (anvendes til arbejde med hardware video-dekodere, der findes i SoC MediaTek).

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster