Collabora je objavila da upravljački program PanVK sada podržava grafički API Vulkan 1.1 (prije je bio podržan samo Vulkan 1.0). Upravljački program pruža podršku za Vulkan grafički API na uređajima s ARM GPU-ovima koji se temelje na V10 arhitekturi, kao što su Mali-G610 i Mali-G310. Uz kompatibilnost s Vulkan 1.1 API-jem, PanVK kod je dodao podršku za mnoga proširenja iz novijih verzija Vulkana, ali potpuna kompatibilnost s Vulkanom 1.2 još nije postignuta. Implementirana su sljedeća proširenja:
- VK_KHR_8bit_storage
- VK_KHR_namjenska_dodjela
- VK_KHR_globalni_prioritet
- 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_djelitelj_atributa_vrha
- VK_KHR_zero_initialize_workgroup_memory
- VK_EXT_4444_formati
- VK_EXT_globalni_prioritetni_upit
- VK_EXT_globalni_prioritet
- VK_EXT_host_query_reset
- VK_EXT_slika_robost
- VK_EXT_cjevovod_robustnost
- VK_EXT_provocirajući_vrh
- VK_EXT_u redu_porodice_strana
- VK_EXT_sampler_filter_minmax (v10+)
- VK_EXT_scalar_block_layout
- VK_EXT_subgroup_size_control (v10+)
- VK_EXT_tooling_info
Podrška za Vulkan 1.1 u PanVK-u već je prihvaćena u granu na kojoj se razvija izdanje Mesa 25.0. Osim toga, PanVK je prema zadanim postavkama uključen na popis upravljačkih programa dostupnih za korištenje u Mesi (ranije PanVK nije bio prikazan na popisu upravljačkih programa i morala se postaviti varijabla okruženja da bi se koristio). Na ARM sustavima, PanVK build je omogućen prema zadanim postavkama. Kod za podršku pojedinačnih ekstenzija Vulklana 1.2 doprinio je jezgri Mesa.
Dodatno, proširena je funkcionalnost otvorenog OpenGL drajvera Panfrost, koji se razvija za ARM Mali GPU paralelno s Vulkan drajverom PanVK:
- Kako bi poboljšao učinkovitost propusnosti, upravljački program ima mehanizam "eliminacije transakcija" omogućen prema zadanim postavkama, koji odbacuje suvišne operacije (na primjer, odbacuju se operacije ponovnog pisanja fragmenata koji se nisu promijenili od posljednjeg renderiranja).
- Dodana je podrška za inkrementalno iscrtavanje, što omogućuje smanjenje potrošnje memorije prilikom iscrtavanja velikog broja objekata zasebnom obradom pločica.
- Dodana podrška za način rada AFBC 32x8, koji se koristi za optimizaciju rada s međuspremnikom za skeniranje u nekim kontrolerima zaslona.
- Maksimalna podržana širina i visina teksture povećana je s 8192 na 32768 piksela.
- Dodana je podrška za način teksturiranja MTK_FMT_MOD_TILE_16L32S, koji kopira fragmentirane podatke u privremeni nefragmentirani međuspremnik prije renderiranja (koristi se za rad s hardverskim video dekoderima prisutnim u MediaTek SoC-ovima).
Izvor: opennet.ru
