Selepas tiga bulan pembangunan, pelaksanaan sumber terbuka API OpenGL dan Vulkan, Mesa 26.0.0, telah dikeluarkan. Keluaran pertama cabang Mesa 26.0.0 adalah percubaan; selepas kod tersebut distabilkan sepenuhnya, versi stabil, 26.0.1, akan dikeluarkan.
Mesa 26.0 menambah sokongan untuk API grafik Vulkan 1.4 dalam pemacu ANV untuk GPU Intel, RADV untuk GPU AMD, NVK untuk GPU NVIDIA, HoneyKrisp (hk) untuk GPU Apple, Turnip untuk GPU Qualcomm, PanVK untuk GPU Mali ARM, rasterizer perisian lavapipe (lvp) dan mod emulator (vn). Pemacu v3dv (Broadcom VideoCore GPU untuk Raspberry Pi 4+) dan dzn (Vulkan over Direct3D 12) menyokong Vulkan 1.0, pemacu kk (KosmicKrisp, Vulkan over Metal) menyokong Vulkan 1.1, dan pemacu pvr (Imagination PowerVR GPU) menyokong Vulkan 1.2
Mesa juga menyediakan sokongan penuh OpenGL 4.6 untuk iris (GPU Intel Gen 8+), radeonsi (AMD), Crocus (GPU Intel Gen4-Gen7 yang lebih lama), AMD (r600), zink, llvmpipe, virgl (GPU maya virgil3D untuk QEMU/KVM), freedreno (lapisan Qualcomm Direct 3 Adreno (O12) dan d12 di atas. asahi (GPU AGX digunakan dalam cip Apple M1 dan M2). Sokongan OpenGL 4.5 tersedia untuk GPU NVIDIA (nvc0). Sokongan OpenGL 3.3 tersedia dalam pemacu softpipe (perisian rasterizer) dan nv50 (NVIDIA NV50). OpenGL 3 disokong dalam pemacu panfrost (ARM Mali GPU) dan v3.1d (Broadcom VideoCore GPU).
Inovasi utama:
- Pemacu Radeon SI telah dipindahkan untuk menggunakan perwakilan perantaraan shader NIR (IR) secara lalai dan bahagian belakang kompilasi shader ACO, yang dibangunkan oleh Valve sebagai alternatif kepada pengkompil shader LLVM. Bahagian belakang ACO bertujuan untuk menjana kod yang seoptimum mungkin untuk shader dalam aplikasi permainan, serta mencapai kelajuan kompilasi yang sangat tinggi. Menggunakan ACO meningkatkan kelajuan kompilasi shader, mengurangkan penggunaan memori, mengurangkan saiz perwakilan binari shader dan menjana kod yang lebih dioptimumkan. Berbanding dengan LLVM, penggunaan bahagian belakang ACO telah mengurangkan masa kompilasi shader sehingga 8 kali ganda, sekali gus mengurangkan masa permulaan program dengan ketara.
- Pemacu Vulkan KosmicKrisp (kk) telah diperkenalkan, melaksanakan API grafik Vulkan di atas API Logam, yang dibangunkan oleh Apple dan digunakan dalam macOSPemacu ini telah dicipta oleh LunarG untuk digunakan pada komputer Mac dengan cip Apple Silicon.
- Pemacu RADV Vulkan (GPU AMD) telah meningkatkan prestasi penjejakan sinar dengan ketara.
- Pembolehubah persekitaran RADV_DEBUG tidak lagi menyokong pilihan invariantgeom, nodynamicbounds, nongg_gs dan splitfma yang telah ditamatkan, yang harus digantikan dalam driconf dengan pembolehubah radv_invariant_geom, radv_no_dynamic_bounds, radv_disable_ngg_gs dan radv_split_fma.
- Pemacu panfrost (GPU ARM Mali) kini menyokong sambungan OpenGL GL_EXT_shader_pixel_local_storage.
- Menambah sokongan untuk sambungan Vulkan:
- VK_KHR_relaxed_block_layout untuk pvr
- Kelas penyimpanan VK_KHR_storage_buffer_storage untuk pvr
- VK_EXT_external_memory_acquire_unmodified untuk panvk
- VK_EXT_discard_rectangles untuk NVK
- VK_KHR_present_id untuk HoneyKrisp
- VK_KHR_present_id2 untuk HoneyKrisp
- VK_KHR_present_wait untuk HoneyKrisp
- VK_KHR_present_wait2 untuk HoneyKrisp
- VK_KHR_maintenance10 untuk ANV, NVK, RADV
- VK_EXT_shader_uniform_buffer_unsized_array untuk ANV, HK, NVK, RADV
- Laporan_memori_peranti_VK_EXT untuk panvk
- VK_VALVE_video_encode_rgb_conversion untuk radv
- VK_EXT_custom_resolve untuk RADV
- Pengubah suai format_gambar_VK_EXT_untuk panvk/v7
- Penukaran VK_KHR_sampler_ycbcr untuk panvk/v7
- VK_KHR_surface_maintenance1 untuk anv, hk, lvp, nvk, radv, tu, v3dv, vn
- VK_KHR_swapchain_maintenance1 untuk anv, hk, lvp, nvk, radv, tu, v3dv, vn
-
Sumber: opennet.ru
