AMD has updated their Linux Open Source Driver for Vulkan.
The AMD Open Source Driver for Vulkanis 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:
RadeonHD 7000 Series
RadeonHD 8000M Series
RadeonR5/R7/R9 200/300 Series
RadeonRX 400/500 Series
RadeonM200/M300/M400 Series
RadeonRX Vega Series
RadeonRX 5700 Series
AMD FireProWorkstation Wx000/Wx100/Wx300 Series
RadeonPro WX x100 Series
RadeonPro 400/500 Series
Operating System Support
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 18.04 (64-bit version)
Ubuntu 16.04.4 (64-bit version)
RedHat 7.5 (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
New feature and improvement
- Enable Renoir support
- Update api version to 1.2.135
- Add limitation on cache directory size
- Add panel setting to disable AMD Vendor extensions
Issue fix
Download
- The issue that scratch allocations, once multiplied for wave size, could be under the WaveSize granularity