Vulkan Extensions - UG1784

Versal AI Edge Series Gen 2 and Prime Series Gen 2 GPU System Software User Guide (UG1784)

Document ID
UG1784
Release Date
2025-07-01
Revision
1.0 English

The following table provides a list of supported Vulkan extensions.

Table 1. Vulkan Extensions
Name Description Notes
VK_ANDROID_native_buffer Provides entry points for vkAcquireImageANDROID, vkGetSwapchainGrallocUsageANDROID, vkQueueSignalReleaseImageANDROID to be used by the Android supplied Vulkan Loader. N/A
VK_KHR_16bit_storage Indicates which SPIR-V features can handle explicit 16-bit data types. The Mali™ driver supports all features: storageBuffer16BitAccess, uniformAndStorageBuffer16BitAccess, storagePushConstant16, and storageInputOutput16. N/A
VK_KHR_dedicated_allocation Enables binding of buffers or images to a dedicated allocation, rather than to a suballocated memory region. N/A
VK_KHR_descriptor_update_template Allows updating a fixed set of descriptors in a single descriptor set from a pointer to a user-defined data structure describing the new descriptors. N/A
VK_KHR_external_fence Enables an application to create fence objects from which non Vulkan handles that reference the underlying synchronization primitive can be exported. N/A
VK_KHR_external_fence_capabilities Provides a set of capability queries and handle definitions that allow an application to determine what types of external fence handles an implementation supports for a given set of use cases. N/A
VK_KHR_external_fence_fd VK_KHR_external_fence_fd enables an application to import and export fence payload from POSIX file descriptors. Support for system handle types to import or export memory and Android Hardware Buffers is not yet available.
VK_KHR_external_memory_capabilities Provides an interface to query which types of external memory handle the driver supports for specific use cases. N/A
VK_KHR_external_semaphore Enables an application to create semaphore objects from which non Vulkan handles that reference the underlying synchronization primitive can be exported. N/A
VK_KHR_external_semaphore_capabilities Provides an interface to query which types of external semaphore handle the driver supports for specific use cases. N/A
VK_KHR_external_semaphore_fd Enables an application to import and export semaphore payload from POSIX file descriptors. N/A
VK_KHR_get_memory_requirements2 Provides new, extendible API entry points for querying memory requirements of images and buffers. N/A
VK_KHR_get_physical_device_properties2 Provides extra entry points for querying device and format properties in an extensible way. N/A
VK_KHR_image_format_list Allows the constraint of image format aliases to enable further driver optimizations. N/A
VK_KHR_maintenance1

Enables support for extra features that missed the Vulkan 1.0 core spec and other minor enhancements:

  • y-inverted viewports.
  • Trimming command pool memory.
  • Data copies between 3D and 2D array images.
  • 2D and 2D array image views on 3D images.
N/A
VK_KHR_maintenance2
  • Allow uncompressed image views of compressed images.
  • Allow clipping behavior of points.
  • Support for upper-left and lower-left origins for the tessellation space.
N/A
VK_KHR_shader_draw_parameters

Enables shader access to three extra built-in variables containing draw call parameters:

  • BaseInstance
  • BaseVertex
  • DrawIndex
N/A
VK_KHR_storage_buffer_storage_class Indicates that SPIR-V code using the StorageBuffer storage class can be used. N/A
VK_KHR_variable_pointers Indicates up to which functional level pointers can be used by SPIR-V code. The Mali™ driver supports the VariablePointersStorageBuffer feature subset. N/A