Pas tre muajsh zhvillimi, Ă«shtĂ« prezantuar lĂ«shimi i zbatimit tĂ« lirĂ« tĂ« API OpenGL dhe Vulkan â Mesa 25.2.0. LĂ«shimi i parĂ« i degĂ«s Mesa 25.2.0 ka status eksperimental â pasi tĂ« ketĂ« pĂ«rfunduar stabilizimi i pĂ«rmirĂ«suar i kodit, do tĂ« lĂ«shohet njĂ« version stabil 25.2.1.
Në Mesa 25.2 është e disponueshme mbështetje për API-në grafike Vulkan 1.4 në drejtuesit ANV për GPU Intel, RADV për GPU AMD, NVK për GPU NVIDIA, Asahi për GPU Apple, Turnip për GPU Qualcomm, PanVK për GPU ARM Mali, në rasterizatorin programatik lavapipe (lvp) dhe në modalitetin emulator (vn). Në drejtuesit v3dv (GPU Broadcom VideoCore për Raspberry Pi 4+) dhe dzn (implementimi i Vulkan mbi Direct3D 12) mbështetet Vulkan 1.0.
Mesa gjithashtu ofron mbështetje të plotë për OpenGL 4.6 për drejtuesit iris (GPU Intel Gen 8+), radeonsi (AMD), Crocus (GPU të vjetra Intel Gen4-Gen7), AMD (r600), zink, llvmpipe, virgl (GPU virtual Virgil3D për QEMU/KVM), freedreno (Qualcomm Adreno), d3d12 (një shtresë për të organizuar funksionimin e OpenGL mbi DirectX 12) dhe asahi (GPU AGX, i përdorur në çipat Apple M1 dhe M2). Mbështetje për OpenGL 4.5 është e disponueshme për GPU NVIDIA (nvc0). Mbështetje për OpenGL 3.3 është e pranishme në drejtuesit softpipe (rasterizatori programatik) dhe nv50 (NVIDIA NV50). Në drejtuesit panfrost (GPU ARM Mali) dhe v3d (GPU Broadcom VideoCore) mbështetet OpenGL 3.1.
Novitetet kryesore:
- Në drejtuesin Vulkan PanVK për pajisje me GPU ARM Mali të bazuara në arkitekturën V10, si Mali-G610 dhe Mali-G310, është shtuar mbështetje për API-në grafike Vulkan 1.4 (më parë është mbështetur Vulkan 1.2).
- Në drejtuesin OpenGL r600 për GPU të vjetra AMD (deri në serinë Radeon HD 7000 përfshirë) është shtuar mbështetje për API-në grafike OpenGL 4.6 (më parë është mbështetur OpenGL 4.5).
- NĂ« drejtuesin Vulkan NVK Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r GPU NVIDIA tĂ« bazuara nĂ« mikroarkitekturĂ«n Blackwell dhe Kepler (GTX 600/700). PĂ«r GPU Blackwell Ă«shtĂ« implementuar mbĂ«shtetje pĂ«r Vulkan 1.4, ndĂ«rsa pĂ«r GPU Kepler â API Vulkan 1.2 (versionet mĂ« tĂ« reja tĂ« Vulkan nuk mbĂ«shteten pĂ«r shkak tĂ« kufizimeve tĂ« harduerit). PĂ«r GPU NVIDIA tĂ« bazuara nĂ« mikroarkitekturĂ«n Maxwell Ă«shtĂ« siguruar pĂ«rputhshmĂ«ri e plotĂ« me Vulkan 1.4.
- ĂshtĂ« optimizuar funksionimi i kompajlerit tĂ« shenjave NAK, i shkruar nĂ« gjuhĂ«n Rust dhe i pĂ«rdorur nĂ« drejtuesin NVK. NĂ« grupin e varĂ«sive pĂ«r drejtuesin NVK Ă«shtĂ« inkluduar paketi crate rustc-hash, me tĂ« cilin Ă«shtĂ« arritur tĂ« zvogĂ«lohet koha e kompajlimit tĂ« shenjave me rreth 12%.
- NVIDIA Maxwell, Pascal, dhe Volta GPU-t tani përdorin përkohësisht mbështetje OpenGL nga drejtuesi Nouveau në drejtuesin Zink në kombinim me drejtuesin Vulkan NVK. Zink gjithashtu përdoret për të siguruar mbështetje OpenGL në sistemet me GPU Blackwell (nuk ka plane për të shtuar mbështetje për GPU Blackwell në drejtuesin OpenGL Nouveau). Zink ofron një implementim OpenGL 4.6 mbi Vulkan, duke mundësuar një OpenGL të përshpejtuar nga hardueri në pajisjet që mbështesin API Vulkan. Performanca e Zink është e krahasueshme me performancën e implementimeve native të OpenGL.
- Performanca e drejtuesit Vulkan Honeykrisp për procesorët grafikë të furnizuar në çipet Apple M1/M2 është rritur ndjeshëm.
- Drejtuesit Vulkan RADV (GPU AMD) dhe ANV (Intel) kanë shtuar mbështetje për përshpejtimin harduerik të dekodimit të videove në formatin VP9. Ky funksionalitet është realizuar përmes zgjerimit Vulkan VK_KHR_video_decode_vp9, të përgatitur nga grupi punues Vulkan WG pranverën e kaluar. Përshpejtimi harduerik është i dispozitshëm për GPU AMD që fillon nga GPU Navi 10 me mikroarkitekturën RDNA 1.0.
- NĂ« drejtuesin Vulkan RADV pĂ«r GPU AMD nĂ« mikroarkitekturĂ«n RDNA3 dhe RDNA4, Ă«shtĂ« rritur performanca e gjurmimit tĂ« rrezeve dhe Ă«shtĂ« pĂ«rmirĂ«suar mbĂ«shtetje pĂ«r teknologjinĂ« e super-sampling FSR 4 (FidelityFX Super Resolution). ĂshtĂ« shtuar mundĂ«sia pĂ«r tĂ« konfiguruar prioritetet pĂ«r radhĂ«n e komandave (zgjerimi OpenCL cl_khr_priority_hints).
- NĂ« drejtuesin OpenGL radeonsi pĂ«r gjeneratat e vjetra tĂ« GPU AMD Evergreen dhe Cayman, Ă«shtĂ« realizuar mbĂ«shtetje pĂ«r OpenGL 4.6. ĂshtĂ« shtuar mbĂ«shtetje pĂ«r memorinĂ« virtuale tĂ« ndarĂ« (SVM, Shared Virtual Memory).
- NĂ« drejtuesin OpenGL Iris dhe drejtuesin Vulkan ANV, Ă«shtĂ« realizuar mbĂ«shtetje pĂ«r GPU-tĂ« qĂ« pĂ«rdoren nĂ« procesorĂ«t Intel Wildcat Lake. NĂ« Iris dhe ANV gjithashtu Ă«shtĂ« shpallur mbĂ«shtetje e qĂ«ndrueshme pĂ«r GPU Intel bazuar nĂ« arkitekturĂ«n Xe3, e pĂ«rdorur nĂ« procesorĂ«t Panther Lake. ĂshtĂ« pĂ«rmirĂ«suar mbĂ«shtetje pĂ«r gjeneratat e GPU Xe2 dhe Xe3. NĂ« drejtuesin Iris Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r memorinĂ« virtuale tĂ« ndarĂ« (SVM, Shared Virtual Memory).
- Në drejtuesin OpenGL freedreno është shtuar mbështetje për GPU Adreno X1-45, i përdorur në SoC Qualcomm Snapdragon X Plus.
- Ka vazhduar zhvillimi i drejtuesit OpenCL Rusticl, i shkruar në gjuhën Rust dhe që ka zëvendësuar drejtuesin Clover. Në Rusticl është shtuar mbështetje për SVM (Shared Virtual Memory), imazhe në hapësirën e ngjyrave sRGB (formatet CL_sRGBA dhe CL_sBGRA), formati FP16 (zgjerimi OpenCL cl_khr_fp16 për drejtuesit asahi, freedreno, llvmpipe, panfrost, radeonsi dhe zink).
- ĂshtĂ« shtuar frontend-i Gallium3D MFT (Media Foundation Transform), i cili lejon pĂ«rdorimin e drejtuesit D3D12 (Direct3D 12) pĂ«r tĂ« realizuar API tĂ« tjera grafike. ĂshtĂ« zhvilluar nga Microsoft pĂ«r WSL (Windows Subsystem for Linux).
- ĂshtĂ« hequr mbĂ«shtetja pĂ«r infrastrukturĂ«n DRI2 (Direct Rendering Infrastructure), e cila Ă«shtĂ« zĂ«vendĂ«suar nga ndĂ«rfaqja DRI3, qĂ« pĂ«rdor DMA-BUF pĂ«r tĂ« organizuar qasjen direkte nĂ« videoadapter. Arsyeja e pĂ«rmendur Ă«shtĂ« se ndĂ«rfaqja DRI3 ekziston prej mĂ« shumĂ« se 10 vjetĂ«sh, DRI2 Ă«shtĂ« tejkaluar dhe tĂ« gjitha drejtuesit e mbĂ«shtetur GPU e kanĂ« zbatuar prej kohĂ«sh ndĂ«rfaqen DRI3.
- ĂshtĂ« ndaluar mbĂ«shtetja pĂ«r metodat e vjetra tĂ« bashkĂ«punimit me buferat â Ă«shtĂ« lĂ«nĂ« vetĂ«m mundĂ«sia e pĂ«rdorimit tĂ« dma-buf.
- ĂshtĂ« ndaluar mbĂ«shtetja pĂ«r versionet e libX11 qĂ« nuk sigurojnĂ« funksionim tĂ« sigurt nĂ« aplikacione me shumĂ« tela. ĂshtĂ« lĂ«nĂ« vetĂ«m mbĂ«shtetje pĂ«r libX11 1.8 (prill 2022) dhe lĂ«shime mĂ« tĂ« reja, qĂ« pĂ«rdorin thirrjen XInitThreads().
- Mbështetja për zgjerimin EGL EGL_WL_bind_wayland_display, e zhvilluar për Wayland, është shpallur e vjetruar dhe është çaktivizuar si standard. Për shkëmbimin e buferave piksel ndërmjet klientit dhe server Wayland, propozohet të përdoret protokolli Wayland-linux_dmabuf. Për të rikthyer mbështetjen, kërkohet specifikimi i flamurit "-Dlegacy-wayland=bind-wayland-display" gjatë ndërtimit. Xwayland mbështet funksionimin e saktë pa EGL_WL_bind_wayland_display që nga lëshimi 24.1 (maj 2024).
- ĂshtĂ« hequr drejtuesi i vjetruar OpenCL Clover. PĂ«r OpenCL duhen pĂ«rdorur drejtuesit RustiCL, mĂ« funksional dhe qĂ« mbĂ«shtet mĂ« shumĂ« versione tĂ« OpenCL.
- Në drejtuesin ANV (Intel) është realizuar zgjerimi Vulkan:
- VK_KHR_shader_bfloat16
- Në drejtuesin RADV (AMD) janë realizuar zgjerime Vulkan:
- VK_KHR_shader_bfloat16
- VK_KHR_robustness2
- VK_EXT_zero_initialize_device_memory
- VK_EXT_scalar_block_layout
- VK_KHR_maintenance9
- VK_KHR_unified_image_layouts
- VK_KHR_shader_float8
- VK_EXT_host_image_copy
- Në drejtuesin NVK (NVIDIA) janë realizuar zgjerime Vulkan:
- VK_EXT_zero_initialize_device_memory
- VK_KHR_cooperative_matrix
- Në drejtuesin zink është realizuar zgjerimi Vulkan:
- NV_timeline_semaphore
- Në drejtuesin v3d (GPU Broadcom VideoCore për Raspberry Pi 4+) është realizuar zgjerimi OpenGL:
- on v3d GL_ARB_blend_func_extended
- Në drejtuesin panfrost janë realizuar zgjerime OpenGL:
- GL_KHR_texture_compression_astc_hdr
- GL_ARB_shader_clock
- GL_EXT_shader_realtime_clock
- Në drejtuesin asahi (Apple) është realizuar zgjerimi OpenGL:
- GL_KHR_texture_compression_astc_hdr
- Në drejtuesin r600 (AMD) janë realizuar zgjerime OpenGL:
- GL_EXT_window_rectangles
- GL_EXT_shader_image_load_store
- Në drejtuesin PanVK (GPU ARM Mali) janë realizuar zgjerime Vulkan:
- VK_EXT_vertex_input_dynamic_state/vertexInputDynamicState
- VK_EXT_vertex_input_dynamic_state
- VK_EXT_vertex_attribute_divisor
- VK_KHR_maintenance4
- VK_KHR_maintenance5
- VK_EXT_direct_mode_display
- VK_EXT_extended_dynamic_state
- VK_KHR_shader_quad_control
- VK_KHR_draw_indirect_count
- VK_KHR_shader_integer_dot_product
- VK_KHR_shader_terminate_invocation
- VK_EXT_shader_demote_to_helper_invocation
- VK_EXT_shader_replicated_composites
- VK_EXT_depth_bias_control
- VK_EXT_primitive_topology_list_restart
- VK_EXT_image_2d_view_of_3d
- VK_EXT_texel_buffer_alignment
- VK_EXT_shader_subgroup_ballot
- VK_EXT_shader_subgroup_vote
- VK_KHR_load_store_op_none
- VK_EXT_load_store_op_none
- VK_EXT_inline_uniform_block
- VK_EXT_texture_compression_astc_hdr
- VK_EXT_depth_clamp_zero_one
- VK_KHR_depth_clamp_zero_one
- VK_EXT_depth_clip_control
- VK_KHR_unified_image_layouts
- VK_KHR_vulkan_memory_model
- VK_EXT_descriptor_indexing
- VK_KHR_maintenance6
- VK_KHR_shader_clock
- VK_KHR_shader_atomic_int64
- VK_KHR_calibrated_timestamps
- VK_EXT_non_seamless_cube_map
- VK_ARM_shader_core_properties
- VK_KHR_host_image_copy
Burimi: opennet.ru
