PĂ€rast kolme kuu arendust on vĂ€lja antud avatud OpenGL ja Vulkani API versioon â Mesa 25.3.0. Uue vĂ€ljaande git-silt avaldati 15. novembril, kuid teade saidil ilmus alles eile (vĂ€ljaande teadetes pole seda siiani kuulutatud). Mesa 25.3.0 esialgne vĂ€ljaanne on katsetamisfaasis â pĂ€rast koodi lĂ”plikku stabiliseerimist vabastatakse stabiilne versioon 25.3.1.
Mesa 25.3 toetab Vulkan 1.4 graafilist API-d Intel GPU-de ANV draiverites, AMD GPU-de RADV draiverites, NVIDIA GPU-de NVK draiverites, Apple GPU-de HoneyKrisp (hk) draiverites, Qualcomm GPU-de Turnip draiverites, ARM Mali GPU-de PanVK draiverites, tarkvaras rasteriseerijas lavapipe (lvp) ja emulaatorireĆŸiimis (vn). Draiverites v3dv (Broadcom VideoCore GPU Raspberry Pi 4+ jaoks) ja dzn (Vulkan implementeerimine Direct3D 12 peal) toetatakse Vulkan 1.0, draiveris kk (KosmicKrisp, Vulkan Metal peal) â Vulkan 1.1 ja draiveris pvr (Imagination PowerVR GPU) â Vulkan 1.2.
Mesa tagab tÀieliku toe OpenGL 4.6 graafikakaartide iris (Intel Gen 8+), radeonsi (AMD), Crocus (vana Intel Gen4-Gen7 graafikakaart), AMD (r600), zink, llvmpipe, virgl (virtuaalne GPU Virgil3D QEMU/KVM jaoks), freedreno (Qualcomm Adreno), d3d12 (kiht OpenGL rakendamiseks DirectX 12 peal) ja asahi (AGX GPU, mida kasutatakse Apple M1 ja M2 kiipide jaoks). OpenGL 4.5 tugi on saadaval NVIDIA GPU (nvc0) jaoks. OpenGL 3.3 tugi on olemas softpipe (tarkvaraline rastaerija) ja nv50 (NVIDIA NV50) draivides. OpenGL 3.1 tugi on olemas draivides tpanfrost (ARM Mali GPU) ja v3d (Broadcom VideoCore GPU).
PÔhilised uuendused:
- Uus Vulkan-draiver KosmicKrisp (kk) on lisatud, mis rakendab grafika API Vulkan API Metal, mida arendab Apple ja mida kasutatakse macOS-is. Draiver on loodud LunarG poolt Maci arvutitele, millel on Apple Silicon kiibid. Praeguses vormis on draiver tĂ€ielikult ĂŒhilduv API Vulkan 1.1-ga, kuid on juba vĂ€ga lĂ€hedal Vulkan 1.3 toe rakendamisele.
- Lisatud ethos draiver NPU Arm Ethos-U65 jaoks.
- Vulkan-draiveris pvr, mida arendatakse Imagination PowerVR GPU jaoks, on tagatud Vulkan 1.2 tugi.
- Vulkan-i RADV draiverisse on lisatud optimeerimisi, mis suurendavad mĂ€rkimisvÀÀrselt Llama.cpp suurte keelemudelite tĂ€itmise mootori töökiirust Vulkani taustal AMD GPU-dega sĂŒsteemides. MĂ”ningates llama-bench katsetes osutus RADV draiveriga pĂ”hinev konfiguratsioon 31% kiiremaks kui AMDVLK draiver ja ROCm, kui töötati pĂ€ringute ("pp" â prompt processing) ja 4% kiiremaks tokenite genereerimisel ("tg" â token generation).
- NVIDIA loodud VDPAU (Video Decode and Presentation API for Unix) rakendusliidese tugi on eemaldatud. Eemaldamise pĂ”hjusena on nimetatud, et VDPAU-d saab kasutada ainult X11 ja OpenGL sĂŒsteemides, kuna Waylandi ja Vulkani tugi puudub. Lisaks on VDPAU-l piirangud, mis takistavad teatud videovoodade korrektset dekodeerimist. VDPAU asemel soovitatakse kasutada VA-API (Video Acceleration API) rakendusliidest, mida saab kasutada Waylandi ja Vulkaniga, ning mis on rakendustes paremini toetatud.
- Zink draiveris, mis rakendab OpenGL 4.6 Vulkanil, on implementeeritud mesh-ĆĄedrite tugi, mis pakuvad alternatiivset viisi geomeetriliste primitiivide kogumite genereerimiseks.
- Rusticl draiverisse on lisatud OpenCL laiendite tugi semaforite (cl_khr_semaphore ja cl_khr_external_semaphore) kasutamiseks.
- Shaderite kompilaatorisse on lisatud funktsionaalsus SPIR-V shaderite asendamiseks.
- Praktiseeritud on Vulkan-kihi tugi AMD Anti-Lag tehnoloogiale, mis minimeerib viivitusi vkQueueSubmit vÔi vkQueueSubmit2 kutsete ja operatsioonide tÀitmise alguse vahel, vÔimaldades vÀhendada ekraanile edastamise viivitusi mÀngudes.
- Lisatud on OpenGL laiendite tugi:
- GL_EXT_mesh_shader zinkile
- GL_ARB_robust_buffer_access_behavior Panfrosti jaoks
- GL_KHR_robust_buffer_access_behavior Panfrosti jaoks
- GL_KHR_robustness Panfrostile ja v3d-le
- GL_ATI_meminfo r300 jaoks
- GL_NVX_gpu_memory_info r300 jaoks
- GL_NV_shader_atomic_int64 radeonsi ja Panfrost V9+ jaoks
- GL_NV_representative_fragment_test zinkile
- EGL_EXT_create_context_robustness Panfrost V10+ jaoks
- Draiveris ANV (Intel) on rakendatud Vulkan laiend: VK_KHR_shader_untyped_pointers.
- Draiveris RADV (AMD) on rakendatud Vulkan laiendid:
- VK_EXT_ycbcr_2plane_444_formats
- VK_KHR_shader_untyped_pointers
- VK_KHR_video_encode_intra_refresh
- VK_KHR_video_encode_quantization_map
- Draiveris NVK (NVIDIA) on rakendatud Vulkan laiendid:
- VK_AMD_buffer_marker
- VK_KHR_maintenance8
- VK_KHR_maintenance9
- VK_NVX_image_view_handle
- Draiveris HoneyKrisp (Apple) on rakendatud OpenGL laiend: VK_KHR_maintenance9.
- Draiveris PanVK (GPU ARM Mali) on rakendatud Vulkan laiendid:
- VK_ARM_shader_core_builtins
- VK_EXT_mutable_descriptor_type
- VK_KHR_maintenance7
- VK_KHR_maintenance8
- VK_KHR_maintenance9
- GPU Imagination PowerVR draiveris on rakendatud Vulkan laiendused:
- VK_EXT_border_color_swizzle
- VK_EXT_color_write_enable
- VK_EXT_custom_border_color
- VK_EXT_depth_clamp_zero_one
- VK_EXT_depth_clip_enable
- VK_EXT_extended_dynamic_state
- VK_EXT_extended_dynamic_state2
- VK_EXT_extended_dynamic_state3
- VK_EXT_image_2d_view_of_3d
- VK_EXT_line_rasterization
- VK_EXT_map_memory_placed
- VK_EXT_physical_device_drm
- VK_EXT_provoking_vertex
- VK_EXT_queue_family_foreign
- VK_EXT_robustness2
- VK_EXT_separate_stencil_usage
- VK_EXT_shader_demote_to_helper_invocation
- VK_EXT_shader_replicated_composites
- VK_EXT_vertex_attribute_divisor
- VK_EXT_zero_initialize_device_memory
- VK_KHR_buffer_device_address
- VK_KHR_create_renderpass2
- VK_KHR_dedicated_allocation
- VK_KHR_depth_stencil_resolve
- VK_KHR_descriptor_update_template
- VK_KHR_device_group
- VK_KHR_device_group_creation
- VK_KHR_imageless_framebuffer
- VK_KHR_line_rasterization
- VK_KHR_maintenance1
- VK_KHR_maintenance2
- VK_KHR_maintenance3
- VK_KHR_map_memory2
- VK_KHR_multiview
- VK_KHR_robustness2
- VK_KHR_sampler_mirror_clamp_to_edge
- VK_KHR_separate_depth_stencil_layouts
- VK_KHR_shader_draw_parameters
- VK_KHR_shader_float_controls
- VK_KHR_shader_non_semantic_info
- VK_KHR_shader_relaxed_extended_instruction
- VK_KHR_shader_subgroup_extended_types
- VK_KHR_shader_terminate_invocation
- VK_KHR_spirv_1_4
- VK_KHR_swapchain_mutable_format
- VK_KHR_vertex_attribute_divisor
- VK_KHR_wayland_surface
- OpenCL laiendused on rakendatud:
- cl_ext_immutable_memory_objects
- cl_khr_external_semaphore radeonsi ja zink jaoks
- cl_khr_external_semaphore_sync_fd radeonsi ja zink jaoks
- cl_khr_semaphore radeonsi ja zink jaoks
Tuleb mÀrkida ka, et on vÀlja antud uus Vulkani spetsifikatsiooni versioon 1.4.333, milles on ette pandud uus laiendus VK_EXT_ray_tracing_invocation_reorder, mis suurendab ray tracing'i jÔudlust 47% vÔrra testides, kui kasutatakse SER (Shader Execution Reordering) vk_gltf_renderer'is.
Allikas: opennet.ru
