Mesa 19.1.0 is now available

From LinuxReviews
Jump to navigationJump to search
Glxgears.png

The long-delayed major update to the Linux graphics stack has parallel shader compiling for all drivers and many new GL extensions for AMD and Intel GPUs. There is also a whole lot of new Vulkan features added, many of which are specific to AMD GPUs. The two blocker-bugs which cased this release to be delayed are finally resolved.

It's easy to forget how important the Mesa graphics stack is; it just works in the background. There would be no SuperTuxKart, no fancy window manager effects, no 3D, no nothing without it. It is a vital part of modern Linux-based operating systems.

There's also conservative rasterization for those who want to experiment with the new Intel Iris graphics driver which will eventually replace the currently-used i965 driver.

More than 3700 commits from 158 different developers went into this major Mesa update.

The highlights

  • GL_ARB_parallel_shader_compile for all drivers.
  • GL_EXT_gpu_shader4 on all GL 3.1 drivers.
  • GL_EXT_shader_image_load_formatted on radeonsi.
  • GL_EXT_texture_buffer_object on all GL 3.1 drivers.
  • GL_EXT_texture_compression_s3tc_srgb on Gallium and i965 drivers (ES extension).
  • GL_NV_compute_shader_derivatives on Iris and i965 drivers.
  • GL_KHR_parallel_shader_compile on all drivers.
  • GL_INTEL_conservative_rasterization on Iris.

The New Vulkan Features

  • VK_EXT_buffer_device_address
  • VK_EXT_depth_clip_enable
  • VK_KHR_ycbcr_image_arrays
  • VK_EXT_inline_uniform_block
  • VK_EXT_external_memory_host
  • VK_EXT_host_query_reset
  • VK_KHR_surface_protected_capabilities
  • VK_EXT_pipeline_creation_feedback
  • VK_NV_compute_shader_derivatives
  • VK_KHR_shader_float16_int8
  • VK_KHR_shader_atomic_int64
  • VK_EXT_descriptor_indexing
  • VK_EXT_memory_budget

The New AMD GPU-specific Vulkan Features

  • VK_EXT_buffer_device_address
  • VK_EXT_depth_clip_enable
  • VK_EXT_inline_uniform_block
  • VK_EXT_host_query_reset
  • VK_KHR_surface_protected_capabilities
  • VK_EXT_pipeline_creation_feedback
  • VK_KHR_8bit_storage
  • VK_AMD_gpu_shader_int16
  • VK_AMD_gpu_shader_half_float
  • VK_KHR_shader_float16_int8

Changes since the last release-candidate

The changes since the release of 19.1.0 RC5 are as follows:

  • radv: Prevent out of bound shift on 32-bit builds.
  • svga: Remove unnecessary check for the pre flush bit for setting vertex buffers
  • winsys/drm: Fix out of scope variable usage
  • winsys/svga/drm: Fix 32-bit RPCI send message
  • egl/dri: flesh out and use dri2_create_drawable()
  • mapi: add static_date offset to MaxShaderCompilerThreadsKHR
  • mapi: correctly handle the full offset table
  • util/os_file: actually return the error read() gave us
  • nir/propagate_invariant: Don't add NULL vars to the hash table
  • Update version to 19.1.0
  • docs: Add release notes for 19.1.0
  • egl/x11: calloc dri2_surf so it's properly zeroed
  • intel/perf: fix EuThreadsCount value in performance equations
  • intel/perf: improve dynamic loading config detection
  • anv/cmd_buffer: Initalize the clear color struct for CNL+
  • anv: Fix check for isl_fmt in assert
  • freedreno/a6xx: fix issues with gallium HUD
  • freedreno/a6xx: fix hangs with newer sqe fw
  • radv: fix alpha-to-coverage when there is unused color attachments
  • radv: fix setting CB_SHADER_MASK for dual source blending

The new features are not the whole story. There's also many smaller optimizations which should give you more frames per second in fun free games like SuperTuxKart.

There will be one last release of the 19.0.x series, 19.0.7 was not meant to be but will be released due to the delayed release of 19.1.0. Then it's over and 19.0 is done for and distributions will be forced to upgrade to Mesa 19.1.0 and let you and your family have access to this fancy new graphics technology. Expect most distributions to let you have these new graphics features sometime this summer. Some will of course let you have it sooner than others, Manjaro Linux users will probably have Mesa 19.1.0 this week while Debian users may not get it for years.

The Bright Future for 3D Games and Applications on Linux

Mesa 19.2.0 RC1 is scheduled for August 6th and with a final release at the end of August. A complete timeline is available at https://www.mesa3d.org/release-calendar.html

Quick last tip for Fedora 30 users

There is a copr backport of Mesa 19.1 with packages for both Fedrao 29 and Fedora 30.


published 2019-06-11last edited 2019-06-26


Add your comment
LinuxReviews welcomes all comments. If you do not want to be anonymous, register or log in. It is free.