Registered Extension Number

548

Revision

1

Ratification Status

Not ratified

Extension and Version Dependencies

API Interactions

  • Interacts with VK_QCOM_tile_properties

Contact

Extension Proposal

Other Extension Metadata

Last Modified Date

2025-03-12

Interactions and External Dependencies
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.

Issues

None.

New Commands

New Structures

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:

Version History

  • Revision 1, 2025-03-26 (Patrick Boyle)

    • Initial version

See Also

No cross-references are available

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.

Copyright 2014-2025 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0