Vulkan
From wikipedia:Vulkan (API):
- Vulkan is a low-overhead, cross-platform 3D graphics and compute API.
Learn more at Khronos.
Installation
To run a Vulkan application, you will need to install the vulkan-icd-loader package (and lib32-vulkan-icd-loader if you also want to run 32-bit applications), as well as Vulkan drivers for your graphics card(s). There are several packages providing a vulkan-driver:
- Intel: vulkan-intel (or lib32-vulkan-intel)
- NVIDIA: nvidia-utils (or lib32-nvidia-utils)
- AMD: there are three implementations, which could be installed simultaneously:
- vulkan-radeon (or lib32-vulkan-radeon) - RADV (part of Mesa project)
- amdvlk (or lib32-amdvlk) - AMDVLK Open (maintained by AMD)
- vulkan-amdgpu-proAUR (or lib32-vulkan-amdgpu-proAUR) - AMDVLK Closed (maintained by AMD)
You can also install the software Vulkan rasterizer known as lavapipe: vulkan-swrast
Other drivers may be installed manually instead:
- PowerVR: https://imgtec.com/vulkan
- Adreno: https://developer.qualcomm.com/software/adreno-gpu-sdk/gpu
For Vulkan application development, install vulkan-headers, and optionally vulkan-validation-layers and vulkan-tools (you can find the vulkaninfo tool in here).
Verification
To see which Vulkan implementations are currently installed on your system, use the following command:
$ ls /usr/share/vulkan/icd.d/
To ensure that Vulkan is working with your hardware, install vulkan-tools and use the vulkaninfo
command to pull up relevant information about your system. If you get info about your graphics card, you will know that Vulkan is working.
$ vulkaninfo
You can see https://linuxconfig.org/install-and-test-vulkan-on-linux for more information.
Selecting vulkan driver
In some cases multiple vulkan driver are installed (for example RADV and AMDVLK). You can choose your preferred driver by setting the environment variable VK_ICD_FILENAMES
.
Running steam with the radv driver is done by
$ VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/radeon_icd.i686.json:/usr/share/vulkan/icd.d/radeon_icd.x86_64.json steam
To avoid crashes with 32bit games it is possible to assigning the 32bit variant and the 64Bit variant to the environment variable.
Vulkan Hardware Database
The Vulkan Hardware Database provides user reported GPU/driver combinations. Supplying own information is possible by using vulkan-caps-viewerAUR.
Troubleshooting
Error - vulkan: No DRI3 support
If you get the message above and using Intel graphics, you may need to force DRI3 and restart Xorg:
/etc/X11/xorg.conf.d/20-intel.conf
Section "Device" Identifier "Intel Graphics" Driver "intel" Option "DRI" "3" EndSection
Nvidia - vulkan is not working and can not initialize
Check if you have any other vulkan driver installed, it may prevent Nvidia's vulkan driver from being detected.
Alternatively set the environment variable VK_ICD_FILENAMES
to /usr/share/vulkan/icd.d/nvidia_icd.json
.
No device for the display GPU found. Are the intel-mesa drivers installed?
Try to list both the intel_icd and primus_vk_wrapper configurations in VK_ICD_FILENAMES
export VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/intel_icd.x86_64.json:/usr/share/vulkan/icd.d/nv_vulkan_wrapper.json