Contact
-
Patrick Boyle [GitHub]pboyleQCOM
Other Extension Metadata
- Last Modified Date
-
2025-03-12
- Interactions and External Dependencies
-
-
Interacts with
VK_QCOM_tile_properties
-
Interacts with
VK_QCOM_tile_shading
-
- Contributors
-
-
Patrick Boyle, Qualcomm Technologies, Inc.
-
Matthew Netsch, Qualcomm Technologies, Inc.
-
Srihari Babu Alla, Qualcomm Technologies, Inc.
-
Kevin Matlage, Qualcomm Technologies, Inc.
-
Description
This extension adds a new memory heap which allows applications to allocate
and manage tile memory.
A tile memory heap is denoted by the new
VK_MEMORY_HEAP_TILE_MEMORY_BIT_QCOM
property.
Memory contents within this heap behave differently than other heaps and
only persist its memory contents within a command buffer submission batch
boundary.
This boundary may be extended to a queue submit boundary by querying
queueSubmitBoundary
in the new
VkPhysicalDeviceTileMemoryHeapPropertiesQCOM
structure.
Tile memory from this heap can be bound to VkImages or VkBuffers.
The following new usage flags VK_IMAGE_USAGE_TILE_MEMORY_QCOM
,
VK_BUFFER_USAGE_TILE_MEMORY_QCOM
,
VK_BUFFER_USAGE_2_TILE_MEMORY_QCOM
were added for this.
A new extended structure is added to get memory requirements for tile memory
VkTileMemoryRequirementsQCOM
.
A new command is added to bind tile memory to a command buffer in order to access and persist tile memory contents while executing commands vkCmdBindTileMemoryQCOM.
This extension can be used in combination with VK_QCOM_tile_properties with the new structure VkTileMemorySizeInfoQCOM.
New Structures
-
Extending VkCommandBufferInheritanceInfo:
-
Extending VkMemoryRequirements2:
-
Extending VkPhysicalDeviceFeatures2, VkDeviceCreateInfo:
-
Extending VkPhysicalDeviceProperties2:
If VK_QCOM_tile_properties is supported:
New Enum Constants
-
VK_QCOM_TILE_MEMORY_HEAP_EXTENSION_NAME
-
VK_QCOM_TILE_MEMORY_HEAP_SPEC_VERSION
-
Extending VkBufferUsageFlagBits:
-
VK_BUFFER_USAGE_TILE_MEMORY_QCOM
-
-
Extending VkBufferUsageFlagBits2:
-
VK_BUFFER_USAGE_2_TILE_MEMORY_QCOM
-
-
Extending VkImageUsageFlagBits:
-
VK_IMAGE_USAGE_TILE_MEMORY_QCOM
-
-
Extending VkMemoryHeapFlagBits:
-
VK_MEMORY_HEAP_TILE_MEMORY_BIT_QCOM
-
-
Extending VkStructureType:
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_MEMORY_HEAP_FEATURES_QCOM
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_MEMORY_HEAP_PROPERTIES_QCOM
-
VK_STRUCTURE_TYPE_TILE_MEMORY_BIND_INFO_QCOM
-
VK_STRUCTURE_TYPE_TILE_MEMORY_REQUIREMENTS_QCOM
-
If VK_QCOM_tile_properties is supported:
-
Extending VkStructureType:
-
VK_STRUCTURE_TYPE_TILE_MEMORY_SIZE_INFO_QCOM
-
Document Notes
For more information, see the Vulkan Specification
This page is a generated document. Fixes and changes should be made to the generator scripts, not directly.