Vulkan

From Gentoo Wiki
Jump to: navigation, search
Resources

Vulkan is a next-generation graphics API created by The Khronos Group. Its focus is to provide 3D graphics cross-platforms in a code once run anywhere fashion.

For Vulkan support, Gentoo has a basic package media-libs/vulkan-loader which provides the libvulkan.so.1 shared object file.

Installation

To compile the open source Vulkan drivers the vulkan USE flag must be enabled for media-libs/mesa. Then use the following command to install libvulkan.so.1 object file:

root #emerge --ask media-libs/vulkan-loader


USE flags

USE flags for media-libs/vulkan-loader Vulkan Installable Client Driver (ICD) Loader

X Add support for X11
layers Include the vulkan layers
wayland Enable dev-libs/wayland backend

Driver support

You can check the (unofficial) Vulkan hardware database for a list of detailed GPU hardware capabilities for Vulkan. The following list shows the Vulkan supported GPU drivers in Mesa:

Driver Vulkan support?
radeon/r600 No
radeonsi via radv, see AMDGPU for details
i915 No
i965 via anvil, see Intel for details
nouveau No

The following alternative, closed-source drivers exist. These also provide Vulkan support:

Troubleshooting

Wrong ELF class

This error that may appear when running vulkaninfo diagnostic tool from dev-util/vulkan-tools and used for Vulkan debugging.

 ERROR: [Loader Message] Code 0 : /usr/lib32/libvulkan_intel.so: wrong ELF class: ELFCLASS32
 ERROR: [Loader Message] Code 0 : /usr/lib32/libvulkan_radeon.so: wrong ELF class: ELFCLASS32

This error can be ignored as both 32-bit and 64-bit drivers are attempted to be loaded on a multilib system.

For more information please see https://github.com/KhronosGroup/Vulkan-Loader/issues/108

See also

  • Xorg/Hardware_3D_acceleration_guide — a guide to getting 3D acceleration working using the DRM with Xorg in Gentoo.
  • OpenCL — a framework for writing programs that execute across heterogeneous computing platforms (CPUs, GPUs, DSPs, FPGAs, ASICs, etc.).