Rilis Mesa 22.3, implementasine gratis saka OpenGL lan Vulkan

Rilis implementasi gratis OpenGL lan Vulkan API - Mesa 22.3.0 - wis diterbitake. Rilis pisanan saka cabang Mesa 22.3.0 nduweni status eksperimen - sawise stabilisasi pungkasan kode kasebut, versi stabil 22.3.1 bakal dirilis.

Ing Mesa 22.3, support kanggo Vulkan 1.3 grafis API kasedhiya ing driver anv kanggo Intel GPUs, radv kanggo AMD GPUs, tu kanggo Qualcomm GPUs, lan ing mode emulator (vn). Vulkan 1.1 support dipun ginakaken ing lavapipe (lvp) software rasterizer, lan Vulkan 1.0 ing driver v3dv (Broadcom VideoCore VI GPU saka Raspberry Pi 4).

Mesa uga nyedhiyakake dhukungan OpenGL 4.6 lengkap kanggo driver 965, iris (Intel), radeonsi (AMD), zink, lan llvmpipe. Dhukungan OpenGL 4.5 kasedhiya kanggo GPU AMD (r600), NVIDIA (nvc0) lan Qualcomm Adreno (freedreno), OpenGL 4.3 kanggo virgl (GPU virtual virgil3D kanggo QEMU/KVM), lan OpenGL 4.2 kanggo driver d3d12 (lapisan kanggo ngatur OpenGL). kerja ing ndhuwur DirectX 12).

Inovasi utama:

  • Driver freedreno kanggo Qualcomm Adreno GPUs menehi support kanggo OpenGL 4.5 grafis API, lan driver emulator (vn) ndhukung Vulkan 1.3 API.
  • Driver Panfrost ngleksanakake kemampuan kanggo cache shaders ing disk lan nambah support kanggo Mali T620 GPU. Pembalap kompatibel karo spesifikasi OpenGL 3.1 lan OpenGL ES 3.1.
  • Driver Vulkan RADV (AMD) wis nambahake dhukungan kanggo GPU GFX11/RDNA3 (seri Radeon RX 7000). Kode kanggo ray tracing wis dioptimalake. Dhukungan ditambahake kanggo format piksel R8G8B8, B8G8R8 lan R16G16B16, uga format buffer vertex 64-bit. Dhukungan ditambahake kanggo flag extendedDynamicState2PatchControlPoints, sing nemtokake dhukungan kanggo ekstensi VK_EXT_extended_dynamic_state2. Radeon Raytracing Analyzer Integrasi.
  • Paket kalebu driver Rusticle karo implementasine saka OpenCL 3.0 specification, kang nemtokake API lan ekstensi basa C kanggo ngatur komputasi podo salib-platform. Pembalap ditulis ing Rust, dikembangake nggunakake antarmuka Gallium sing kasedhiya ing Mesa lan tumindak minangka analog saka frontend Clover OpenCL sing ana ing Mesa. Semanggi wis suwe ditinggalake lan rusticl dipanggonke minangka pengganti mangsa ngarep. Dhukungan kanggo Rust lan rusticl dipateni kanthi gawan lan mbutuhake mbangun kanthi opsi eksplisit "-D gallium-rusticl = true -Dllvm = aktif -Drust_std = 2021". Nalika mbangun, compiler rustc, generator naleni bindgen, LLVM, SPIRV-Tools, lan SPIRV-LLVM-Translator dibutuhake minangka dependensi tambahan.
  • Driver RadeonSI kalebu dhukungan kanggo rendering multi-threaded liwat OpenGL minangka standar.
  • Ngenalake Mesa-DB, jinis cache shader anyar sing nyimpen data ing file siji.
  • Dhukungan tambahan kanggo ekstensi OpenGL:
    • GL_ARB_shader_clock kanggo llvmpipe.
    • GL_KHR_blend_equation_advanced_coherent kanggo zink.
    • GL_NV_shader_atomic_float kanggo llvmpipe.
  • Dhukungan tambahan kanggo ekstensi Vulkan:
    • VK_KHR_shader_clock kanggo lavapipe.
    • VK_EXT_attachment_feedback_loop_layout kanggo RADV, lavapipe.
    • VK_KHR_global_priority kanggo RADV.
    • VK_EXT_load_store_op_none kanggo RADV.
    • VK_EXT_mutable_descriptor_type kanggo RADV.
    • VK_EXT_shader_atomic_float kanggo lvp.
    • VK_EXT_shader_atomic_float2 kanggo lvp.
    • VK_EXT_image_robustness kanggo v3dv.
    • VK_EXT_extended_dynamic_state3 kanggo lavapipe, RADV lan ANV.
    • VK_EXT_extended_dynamic_state2 kanggo RADV.
    • VK_EXT_pipeline_robustness kanggo v3dv.
    • VK_EXT_mesh_shader kanggo ANV.

Source: opennet.ru

Add a comment