Release of Mesa 24.0, a free implementation of OpenGL and Vulkan

The release of the free implementation of the OpenGL and Vulkan APIs - Mesa 24.0.0 has been published. The first release of the Mesa 24.0.0 branch has an experimental status - after the final stabilization of the code, a stable version 24.0.1 will be released.

Mesa 24.0 provides support for the Vulkan 1.3 graphics API in anv for Intel GPUs, radv for AMD GPUs, NVK for NVIDIA GPUs, tu for Qualcomm GPUs, in the lavapipe software rasterizer (lvp), and in emulator mode (vn). Vulkan 1.0 support is implemented in the v3dv (Broadcom VideoCore VI GPU from Raspberry Pi 4) and dzn (Vulkan implementation on top of Direct3D 12) drivers.

Mesa also provides full OpenGL 4.6 support for iris (Intel Gen 8+ GPUs), radeonsi (AMD), Crocus (older Intel Gen4-Gen7 GPUs), zink, llvmpipe, virgl (Virgil3D virtual GPU for QEMU/KVM), freedreno drivers (Qualcomm Adreno) and d3d12 (a layer for organizing OpenGL work on top of DirectX 12). OpenGL 4.5 support is available for AMD (r600) and NVIDIA (nvc0) GPUs. OpenGL 3.3 support is present in the softpipe (software rasterizer), asahi (AGX GPU used in Apple M1 and M2 chips) and nv50 (NVIDIA NV50) drivers.

Main innovations:

  • Added new Vulkan pvr driver for Imagination PowerVR GPU.
  • The NVK driver (NVIDIA) supports Vulkan 1.3.
  • The crocus driver (Intel Gen4-Gen7 GPU) supports OpenGL 4.6.
  • The d3d12 driver, which provides an OpenGL implementation layer on top of DirectX 12, provides support for OpenGL 4.6.
  • The Asahi driver for the Apple AGX GPU includes support for geometry shaders and is compatible with OpenGL 3.3.
  • Added the ability to use Vulkan extensions for hardware acceleration of video encoding in h.264 and h.265 formats.
  • The RADV Vulkan driver for AMD GPUs has improved ray tracing performance.
  • Support for extensions has been added to the NVK Vulkan driver for NVIDIA GPUs:
    • VK_KHR_vulkan_memory_model
    • VK_EXT_multi_draw
    • VK_KHR_shader_float_controls
    • VK_EXT_texel_buffer_alignment
    • VK_EXT_shader_image_atomic_int64
    • VK_KHR_shader_atomic_int64
    • VK_KHR_shader_subgroup_extended_types
    • VK_EXT_subgroup_size_control
    • VK_KHR_fragment_shader_barycentric
    • VK_KHR_synchronization2
    • VK_KHR_pipeline_executable_properties
  • Support for extensions has been added to the RADV Vulkan driver (AMD):
    • VK_EXT_image_compression_control
    • VK_EXT_device_fault
    • VK_KHR_calibrated_timestamps
    • VK_KHR_vertex_attribute_divisor
    • VK_KHR_maintenance6
    • VK_KHR_ray_tracing_position_fetch
    • VK_EXT_depth_clamp_zero_one
  • Support for extensions has been added to the Asahi OpenGL driver for the Apple AGX GPU:
    • GL_EXT_disjoint_timer_query
    • GL_ARB_texture_cube_map_array
    • GL_ARB_clip_control
    • GL_ARB_timer_query
    • GL_ARB_base_instance
    • GL_ARB_shader_texture_image_samples
    • GL_ARB_indirect_parameters
    • GL_ARB_viewport_array
    • GL_ARB_fragment_layer_viewport
    • GL_ARB_cull_distance
    • GL_ARB_transform_feedback_overflow_query
  • Added support for the EGL extension EGL_EXT_query_reset_notification_strategy.

Source: opennet.ru

Add a comment