NVIDIA DRIVE OS Linux SDK API Reference

5.1.12.0 Release

 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Vulkan Specs and Extensions

Vulkan is a new generation graphics and compute API that provides high- efficiency, cross-platform access to modern GPUs used in a wide variety of devices from PCs and consoles to mobile phones and embedded platforms.

NVIDIA DRIVE™ Linux supports the Vulkan 1.1 specification. For the latest Vulkan 1.1 specification with extensions, see:

https://www.khronos.org/registry/vulkan/specs/1.1-extensions/pdf/vkspec.pdf

Note
Vulkan support is currently provided for evaluation purposes only.

Vulkan Extensions

The descriptions for the Vulkan extensions can be found here: https://www.khronos.org/registry/vulkan/

Instance Extensions

The Vulkan driver in this release supports the following Vulkan instance extensions. You can determine exactly which Vulkan instance extensions your NVIDIA DRIVE™ product supports using code such as the following.

uint32_t instance_ext_count = 0;
VkExtensionProperties *instance_exts_ptr = NULL;
//Get the number of extensions
vkEnumerateInstanceExtensionProperties(NULL, &instance_ext_count, NULL);
instance_exts_ptr = (VkExtensionProperties*) malloc(instance_ext_count * sizeof(VkExtensionProperties));
//Get the list of extensions
vkEnumerateInstanceExtensionProperties(NULL, &instance_ext_count, instance_exts_ptr);

Where instance_exts_ptr is a pointer to an array of VkExtensionProperties structures that will contain extension names.

Device Extensions

The Vulkan driver in this release supports the following Vulkan device extensions. You can determine exactly which Vulkan device extensions your NVIDIA DRIVE™ product supports using code such as the following:

uint32_t device_ext_count = 0;
VkExtensionProperties *device_exts_ptr = NULL;
//Get the number of extensions
vkEnumerateDeviceExtensionProperties(physDevice, NULL, &device_ext_count, NULL);
device_exts_ptr = (VkExtensionProperties*) malloc(device_ext_count * sizeof(VkExtensionProperties));
//Get the list of extensions
vkEnumerateDeviceExtensionProperties(physDevice, NULL, &device_ext_count, device_exts_ptr);

Where physDevice is the VkPhysicalDevice that will be queried and device_exts_ptr is a pointer to an array of VkExtensionProperties structures that will contain extension names.