AMD has updated their Linux Open Source Driver for Vulkan.
The AMD Open Source Driver for Vulkan is an open-source Vulkan driver for Radeon graphics adapters on Linux. It is built on top of AMD's Platform Abstraction Library (PAL), a shared component that is designed to encapsulate certain hardware and OS-specific programming details for many of AMD's 3D and compute drivers. Leveraging PAL can help provide a consistent experience across platforms, including support for recently released GPUs and compatibility with AMD developer tools.
Shaders that compose a particular VkPipeline object are compiled as a single entity using the LLVM-Based Pipeline Compiler (LLPC) library. LLPC builds on LLVM's existing shader compilation infrastructure for AMD GPUs to generate code objects compatible with PAL's pipeline ABI. Notably, AMD's closed-source Vulkan driver currently uses a different pipeline compiler, which is the major difference between AMD's open-source and closed-source Vulkan drivers.
Product Support
The AMD Open Source Driver for Vulkan is designed to support the following AMD GPUs:
Operating System Support
- Radeon HD 7000 Series
- Radeon HD 8000M Series
- Radeon R5/R7/R9 200/300 Series
- Radeon RX 400/500 Series
- Radeon M200/M300/M400 Series
- Radeon RX Vega Series
- Radeon RX 5700/5500 Series
- AMD FirePro Workstation Wx000/Wx100/Wx300 Series
- Radeon Pro WX x100 Series
- Radeon Pro 400/500 Series
- Radeon W5700/W5500 Series
The AMD Open Source Driver for Vulkan is designed to support following distros on both the AMDGPU upstream driver stack and the AMDGPU Pro driver stack:
- Ubuntu 20.04 (64-bit version)
- Ubuntu 18.04 (64-bit version)
- RedHat 8.2 (64-bit version)
- RedHat 7.8 (64-bit version)
The driver has not been tested on other distros. You may try it out on other distros of your choice.
Note: To run the Vulkan driver with AMDGPU upstream driver stack on SI and CI generation GPUs, amdgpu.si_support and amdgpu.cik_support need to be enabled in kernel
2022-1-26 updateNew feature and improvement
- Enable extension VK_EXT_provoking_vertex
- Enable extension VK_EXT_depth_clip_control
- Update Khronos Vulkan Headers to 1.3.203 and enable Vulkan 1.3 support
- Enable SPIRV 1.6