A Collabora bejelentette, hogy a PanVK illesztőprogram mostantól támogatja a Vulkan 1.1 grafikus API-t (korábban csak a Vulkan 1.0 volt támogatott). Az illesztőprogram támogatja a Vulkan grafikus API-t a V10 architektúrán alapuló ARM GPU-kkal rendelkező eszközökön, például a Mali-G610 és a Mali-G310. A Vulkan 1.1 API-val való kompatibilitás mellett a PanVK kód a Vulkan újabb verzióinak számos bővítményét is támogatja, de a Vulkan 1.2-vel való teljes kompatibilitást még nem sikerült elérni. A következő bővítmények kerültek bevezetésre:
- VK_KHR_8bit_storage
- VK_KHR_dedikált_kiosztás
- 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_utasítás
- VK_KHR_shader_subgroup_rotate (v10+)
- VK_KHR_vertex_attribute_divisor
- VK_KHR_zero_inicialize_workgroup_memory
- VK_EXT_4444_formátumok
- VK_EXT_global_priority_query
- VK_EXT_global_priority
- VK_EXT_host_query_reset
- VK_EXT_image_robustness
- VK_EXT_pipeline_robustness
- VK_EXT_provokáló_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_eszköz_információ
A PanVK Vulkan 1.1 támogatását már elfogadták abba az ágba, amelyen a Mesa 25.0 kiadást fejlesztik. Ezenkívül a PanVK alapértelmezés szerint szerepel a Mesa-ban használható illesztőprogramok listáján (korábban a PanVK nem jelent meg az illesztőprogramok listájában, és a használatához környezeti változót kellett beállítani). Az ARM rendszereken a PanVK build alapértelmezés szerint engedélyezve van. Az egyes Vulklan 1.2 bővítmények támogatására szolgáló kód a Mesa maghoz került.
Emellett a Panfrost nyílt OpenGL meghajtó funkcionalitása is bővült, amelyet az ARM Mali GPU-hoz fejlesztenek párhuzamosan a Vulkan meghajtó PanVK-val:
- A sávszélesség hatékonyságának javítása érdekében az illesztőprogramban alapértelmezés szerint engedélyezve van egy „tranzakciót kiküszöbölő” mechanizmus, amely elveti a redundáns műveleteket (például az utolsó renderelés óta nem változott töredékek újraírására vonatkozó műveleteket a rendszer elveti).
- Hozzáadott támogatás a növekményes megjelenítéshez, amely lehetővé teszi a memóriafogyasztás csökkentését nagyszámú objektum csempék külön feldolgozásával történő renderelésekor.
- Hozzáadott támogatás az AFBC 32x8 módhoz, amely egyes kijelzővezérlőkben a kiolvasási pufferrel végzett munka optimalizálására szolgál.
- A maximális támogatott textúraszélesség és -magasság 8192-ről 32768 képpontra nőtt.
- Támogatás hozzáadva az MTK_FMT_MOD_TILE_16L32S textúrázási módhoz, amely a töredezett adatokat egy ideiglenes töredezettség nélküli pufferbe másolja a renderelés előtt (a MediaTek SoC-ekben található hardveres videodekóderekkel való együttműködéshez).
Forrás: opennet.ru
