Table of Contents

Ubuntu - GPU - Vulkan - Set Vulkan Driver

There are a number of drivers for Vulkan.

Some provide better performance than others.

Drivers include:

See Check what Vulkan implementations are currently installed


Set AMDVLK as the Vulkan Driver

export VK_ICD_FILENAMES=/etc/vulkan/icd.d/amd_icd64.json

Check that the driver is being picked up

vulkaninfo | grep driver

returns:

	driverVersion     = 8388879 (0x80010f)
	driverID           = DRIVER_ID_AMD_OPEN_SOURCE
	driverName         = AMD open-source driver
	driverInfo         = 2023.Q2.3 (LLPC)
	driverUUID      = 414d442d-4c49-4e55-582d-445256000000
	driverUUID                        = 414d442d-4c49-4e55-582d-445256000000
	driverID                                             = DRIVER_ID_AMD_OPEN_SOURCE
	driverName                                           = AMD open-source driver
	driverInfo                                           = 2023.Q2.3 (LLPC)
	VK_KHR_driver_properties                    : extension revision 1

NOTE: The driverID and other fields here show that the AMD open-source driver, AMDLVK is being used.

  • Test by running
    vkcube

Set MESA LLVMPIPE as the Vulkan Driver

export VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/lvp_icd.x86_64.json:/usr/share/vulkan/icd.d/lvp_icd.i686.json

Check that the driver is being picked up

vulkaninfo | grep driver

returns:

	driverVersion     = 1 (0x0001)
	driverID           = DRIVER_ID_MESA_LLVMPIPE
	driverName         = llvmpipe
	driverInfo         = Mesa 23.1.2 - kisak-mesa PPA (LLVM 15.0.7)
	driverUUID      = 6c6c766d-7069-7065-5555-494400000000
	driverUUID                        = 6c6c766d-7069-7065-5555-494400000000
	driverID                                             = DRIVER_ID_MESA_LLVMPIPE
	driverName                                           = llvmpipe
	driverInfo                                           = Mesa 23.1.2 - kisak-mesa PPA (LLVM 15.0.7)
	VK_KHR_driver_properties                     : extension revision 1

NOTE: The driverID and other fields here show that the LLVMPIPE driver is being used.

  • Test by running
    vkcube

Set MESA RADV as the Vulkan Driver

export VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/radeon_icd.x86_64.json:/usr/share/vulkan/icd.d/radeon_icd.i686.json

Check that the driver is being picked up

vulkaninfo | grep driver

returns:

	driverVersion     = 96473090 (0x5c01002)
	driverID           = DRIVER_ID_MESA_RADV
	driverName         = radv
	driverInfo         = Mesa 23.1.2 - kisak-mesa PPA
	driverUUID      = 414d442d-4d45-5341-2d44-525600000000
	driverUUID                        = 414d442d-4d45-5341-2d44-525600000000
	driverID                                             = DRIVER_ID_MESA_RADV
	driverName                                           = radv
	driverInfo                                           = Mesa 23.1.2 - kisak-mesa PPA
	VK_KHR_driver_properties                    : extension revision 1

NOTE: The driverID and other fields here show that the RADV driver is being used.

  • Test by running
    vkcube