Pas tre muajsh zhvillimi, është publikuar implementimi falas i OpenGL dhe Vulkan API, Mesa 25.2.0. Versioni i parë i degës Mesa 25.2.0 ka një status eksperimental - pas stabilizimit përfundimtar të kodit, do të publikohet një version i qëndrueshëm 25.2.1.
Mesa 25.2 shton mbështetje për API-në grafike Vulkan 1.4 në drajverët ANV për GPU-të Intel, drajverët RADV për GPU-të AMD, drajverët NVK për GPU-të NVIDIA, drajverët Asahi për GPU-të Apple, drajverët Turnip për GPU-të Qualcomm, drajverët PanVK për GPU-të ARM Mali, rasterizuesin e softuerit lavapip (lvp) dhe modalitetin e emulatorit (vn). Vulkan 3 mbështetet në drajverët v4dv (GPU-të Broadcom VideoCore për Raspberry Pi 3+) dhe drajverët dzn (një implementim i Vulkan mbi Direct12D 1.0).
Mesa gjithashtu ofron mbështetje të plotë për OpenGL 4.6 për iris (GPU Intel Gen 8+), radeonsi (AMD), Crocus (GPU-të më të vjetra Intel Gen4-Gen7), AMD (r600), zink, llvmpipe, virgl (GPU virtuale virgil3D për QEMU/KVM), freedreno (Qualcomm Adreno), d3d12 (shtresa OpenGL mbi DirectX 12) dhe asahi (GPU AGX e përdorur në çipat Apple M1 dhe M2). Mbështetja për OpenGL 4.5 është e disponueshme për GPU-të NVIDIA (nvc0). Mbështetja për OpenGL 3.3 është e disponueshme në drajverët softpipe (software rasterizer) dhe nv50 (NVIDIA NV50). OpenGL 3 mbështetet në drajverët panfrost (ARM Mali GPU) dhe v3.1d (Broadcom VideoCore GPU).
Risitë kryesore:
- Drajveri PanVK Vulkan për pajisjet me GPU ARM Mali bazuar në arkitekturën V10, siç janë Mali-G610 dhe Mali-G310, është përditësuar për të mbështetur API-në grafike Vulkan 1.4 (më parë mbështetej Vulkan 1.2).
- Drajveri OpenGL r600 për GPU-të më të vjetra AMD (deri në dhe duke përfshirë serinë Radeon HD 7000) tani mbështet API-në grafike OpenGL 4.6 (më parë mbështetej OpenGL 4.5).
- Drajveri NVK Vulkan shton mbështetje për GPU-të NVIDIA Blackwell dhe Kepler (GTX 600/700). GPU-të Blackwell mbështesin Vulkan 1.4, ndërsa GPU-të Kepler mbështesin API-në Vulkan 1.2 (versionet më të reja të Vulkan nuk mbështeten për shkak të kufizimeve të harduerit). GPU-të NVIDIA Maxwell janë plotësisht të pajtueshme me Vulkan 1.4.
- Kompiluesi i shaderit NAK, i shkruar në Rust dhe i përdorur në drajverin NVK, është optimizuar. Paketa rustc-hash crate është shtuar në varësitë e drajverit NVK, gjë që ka zvogëluar kohën e kompilimit të shaderit me rreth 12%.
- Mbështetja e OpenGL për GPU-të NVIDIA Maxwell, Pascal dhe Volta është ndërruar si parazgjedhje nga drajveri Nouveau në drajverin Zink në lidhje me drajverin NVK Vulkan. Zink përdoret gjithashtu për të ofruar mbështetje OpenGL në sistemet me GPU Blackwell (drejveri Nouveau OpenGL nuk është planifikuar të shtojë mbështetje për GPU-të Blackwell). Zink ofron një implementim të OpenGL 4.6 mbi Vulkan, duke lejuar OpenGL të përshpejtuar nga hardueri në pajisjet që mbështesin API-në Vulkan. Performanca e Zink është afër asaj të implementimeve native të OpenGL.
- Performancë e përmirësuar ndjeshëm e drajverit Honeykrisp Vulkan për GPU-të që gjenden në çipat Apple M1/M2.
- Drajverët Vulkan RADV (GPU AMD) dhe ANV (Intel) janë përditësuar për të mbështetur përshpejtimin harduerik për dekodimin e videos në formatin VP9. Kjo veçori zbatohet duke përdorur zgjerimin Vulkan VK_KHR_video_decode_vp9, i cili u përgatit nga Vulkan WG në pranverë. Përshpejtimi harduerik është i disponueshëm për GPU-të AMD duke filluar me GPU-në Navi 10 bazuar në mikroarkitekturën RDNA 1.0.
- Drajveri RADV Vulkan pĂ«r GPU-tĂ« AMD bazuar nĂ« mikroarkitekturat RDNA3 dhe RDNA4 pĂ«rmirĂ«son performancĂ«n e gjurmimit tĂ« rrezeve dhe pĂ«rmirĂ«son mbĂ«shtetjen pĂ«r teknologjinĂ« e supersamplingut FSR 4 (FidelityFX Super Resolution). ĂshtĂ« shtuar mundĂ«sia pĂ«r tĂ« konfiguruar prioritetet pĂ«r radhĂ«n e rrjedhĂ«s sĂ« komandave (zgjerimi OpenCL cl_khr_priority_hints).
- Drajveri radeonsi OpenGL pĂ«r familjet mĂ« tĂ« vjetra tĂ« GPU-ve AMD Evergreen dhe Cayman tani mbĂ«shtet OpenGL 4.6. ĂshtĂ« shtuar mbĂ«shtetje pĂ«r memorien virtuale tĂ« pĂ«rbashkĂ«t (SVM).
- Drajveri OpenGL Iris dhe drajveri Vulkan ANV mbështesin GPU-të e përdorura në procesorët Intel Wildcat Lake. Iris dhe ANV njoftuan gjithashtu mbështetje të qëndrueshme për GPU-të Intel bazuar në arkitekturën Xe3, të përdorur në procesorët Panther Lake. Mbështetja për familjet GPU Xe2 dhe Xe3 është përmirësuar. Drajveri Iris tani mbështet Kujtesën Virtuale të Ndarë (SVM).
- Drajveri freedreno OpenGL është përditësuar për të mbështetur GPU-në Adreno X1-45 të përdorur në procesorin Qualcomm Snapdragon X Plus SoC.
- Zhvillimi i vazhdueshëm i drajverit Rusticl OpenCL, i shkruar në gjuhën Rust dhe që zëvendëson drajverin Clover. Rusticl tani mbështet SVM (Memorie Virtuale të Ndarë), imazhe në hapësirën e ngjyrave sRGB (formatet CL_sRGBA dhe CL_sBGRA) dhe formatin FP16 (zgjerimi OpenCL cl_khr_fp16 për drajverët asahi, freedreno, llvmpipe, panfrost, radeonsi dhe zink).
- U shtua MFT (Media Foundation Transform) i frontend-it Gallium3D, i cili lejon përdorimin e drajverit D3D12 (Direct3D 12) për të zbatuar API të tjera grafike. Zhvilluar nga Microsoft për WSL (Windows Nënsistemi për Linux).
- U hoq mbështetja për DRI2 (Infrastruktura e Renderimit Direkt), e cila u zëvendësua nga ndërfaqja DRI3 duke përdorur DMA-BUF për të organizuar aksesin direkt në përshtatësin e videos. Arsyeja e dhënë është se ndërfaqja DRI3 ekziston për më shumë se 10 vjet, DRI2 është i vjetëruar prej kohësh dhe të gjithë drajverët e mbështetur të GPU-së e kanë zbatuar prej kohësh ndërfaqen DRI3.
- Mbështetja për metodat e vjetra të ndarjes së buffer-it është ndërprerë, duke lënë vetëm mundësinë për të përdorur dma-buf.
- Mbështetja për versionet e libX11 që nuk janë të sigurta për thread-et është hequr, duke lënë vetëm mbështetje për libX11 1.8 (prill 2022) dhe versionet më të reja që përdorin thirrjen XInitThreads().
- Mbështetja për shtesën EGL EGL_WL_bind_wayland_display të implementuar për Wayland është vjetëruar dhe çaktivizuar si parazgjedhje. Për të shkëmbyer buffer-e pikselësh midis klientit dhe server Propozohet që Wayland të përdorë protokollin linux_dmabuf Wayland. Riaktivizimi kërkon specifikimin e flamurit "-Dlegacy-wayland=bind-wayland-display" gjatë ndërtimit. Xwayland mbështet funksionimin e saktë pa EGL_WL_bind_wayland_display duke filluar me versionin 24.1 (maj 2024).
- Drajveri i vjetëruar i OpenCL, Clover, është hequr. Për OpenCL, duhet të përdoret drajveri RustiCL, i cili është më funksional dhe mbështet më shumë versione të OpenCL.
- Drajveri ANV (Intel) zbaton zgjerimin Vulkan:
- VK_KHR_shader_bfloat16
- Drajveri RADV (AMD) zbaton zgjerimet Vulkan:
- VK_KHR_shader_bfloat16
- VK_KHR_robustness2
- VK_EXT_zero_initialize_device_memory
- VK_EXT_scalar_block_layout
- VK_KHR_mirëmbajtje9
- Paraqitjet e imazheve të unifikuara të VK_KHR
- VK_KHR_shader_float8
- VK_EXT_host_image_copy
- Drajveri NVK (NVIDIA) zbaton zgjerimet Vulkan:
- VK_EXT_zero_initialize_device_memory
- Matrica bashkëpunuese VK_KHR
- Drajveri zink implementon zgjerimin Vulkan:
- NV_timeline_semaphore
- Drajveri v3d (GPU Broadcom VideoCore për Raspberry Pi 4+) zbaton zgjerimin OpenGL:
- në v3d GL_ARB_blend_func_extended
- Drajveri i panfrost implementon zgjerimet e mëposhtme të OpenGL:
- GL_KHR_texture_compression_astc_hdr
- GL_ARB_shader_ora
- GL_EXT_shader_realtime_time
- Drajveri asahi (Apple) implementon zgjerimin OpenGL:
- GL_KHR_texture_compression_astc_hdr
- Drajveri r600 (AMD) zbaton zgjerimet OpenGL
- Drejtkëndëshat e dritares GL_EXT
- GL_EXT_shader_image_load_store
- Drajveri PanVK (GPU ARM Mali) zbaton zgjerimet Vulkan:
- VK_EXT_vertex_input_dynamic_state/vertexInputDynamicState
- VK_EXT_vertex_input_dynamic_state
- VK_EXT_vertex_attribute_divisor
- VK_KHR_mirëmbajtje4
- VK_KHR_mirëmbajtje5
- VK_EXT_direct_mode_display
- VK_EXT_shprehur_dynamic_state
- VK_KHR_shader_quad_control
- VK_KHR_draw_indirekt_count
- VK_KHR_shader_integer_dot_product
- VK_KHR_shader_terminate_invocation
- VK_EXT_shader_demote_ për_ndihmuar_inokimin
- 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
- Votimi i votimit për VG_EXT_shader_subgroup
- VK_EXT_shader_subgroup_voto
- VK_KHR_load_store_op_asnjë
- 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
- Paraqitjet e imazheve të unifikuara të VK_KHR
- VK_KHR_vulkan_model_kujtim
- VK_EXT_descriptor_indexing
- VK_KHR_mirëmbajtje6
- Ora VK_KHR_shader
- VK_KHR_shader_atomic_int64
- VK_KHR_vula_kohore_kalibruar
- VK_EXT_non_seamless_cube_map
- VK_ARM_shader_core_properties
- VK_KHR_host_image_copy
Burimi: opennet.ru
