HORIZON HASKELLDocslts/ghc-9.14.x3e2d5682026-10-11Search names, modules, packages, or :: a typeCtrl K

GHC 9.14.1 · lts/ghc-9.14.x · 3e2d568 · 2026-10-11

Modulevulkan-3.27GHC2021

Vulkan.Extensions.VK_EXT_frame_boundary

Name

VK_EXT_frame_boundary - device extension

VK_EXT_frame_boundary

Name String

VK_EXT_frame_boundary

Extension Type

Device extension

Registered Extension Number

376

Revision

1

Ratification Status

Ratified

Extension and Version Dependencies

VK_KHR_get_physical_device_properties2

or

Vulkan Version 1.1

Contact
Extension Proposal

VK_EXT_frame_boundary

Other Extension Metadata

Last Modified Date

2023-06-14

Contributors
  • James Fitzpatrick, Imagination Technologies

  • Hugues Evrard, Google

  • Melih Yasin Yalcin, Google

  • Andrew Garrard, Imagination Technologies

  • Jan-Harald Fredriksen, Arm

  • Vassili Nikolaev, NVIDIA

  • Ting Wei, Huawei

Description

VK_EXT_frame_boundary is a device extension that helps tools (such as debuggers) to group queue submissions per frames in non-trivial scenarios, typically when queuePresentKHR is not a relevant frame boundary delimiter.

New Structures

New Enums

New Bitmasks

New Enum Constants

Version History

  • Revision 0, 2022-01-14 (Hugues Evard)

    • Initial proposal

  • Revision 1, 2023-06-14 (James Fitzpatrick)

    • Initial draft

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.

  • 6 types
  • Packagevulkan-3.27
  • Exports9
  • LanguageGHC2021
  • LicenceBSD-3-Clause
  • SourceVK_EXT_frame_boundary.hs
datadata FrameBoundaryEXT
#

VkFrameBoundaryEXT - Add frame boundary information to queue submissions

Description

The application can associate frame boundary information to a queue submission call by adding a FrameBoundaryEXT structure to the pNext chain of queue submission, PresentInfoKHR, or BindSparseInfo.

The frame identifier is used to associate one or more queue submissions to a frame. It is meant to be unique within a frame lifetime, i.e. it is possible (though not recommended) to reuse frame identifiers, as long as any two frames that may have overlapping queue submissions (as in the example above) use different frame identifiers.

Since the concept of frame is application-dependent, there is no way to validate the use of frame identifier. It is good practice to use a monotonically increasing counter as the frame identifier and not reuse identifiers between frames.

The pImages and pBuffers arrays contain a list of images and buffers which store the “end result” of the frame. As the concept of frame is application-dependent, not all frames may produce their results in images or buffers, yet this is a sufficiently common case to be handled by FrameBoundaryEXT. Note that no extra information, such as image layout is being provided, since the images are meant to be used by tools which would already be tracking this required information. Having the possibility of passing a list of end-result images makes FrameBoundaryEXT as expressive as queuePresentKHR, which is often the default frame boundary delimiter.

The application can also associate arbitrary extra information via tag data using tagName, tagSize and pTag. This extra information is typically tool-specific.

Valid Usage (Implicit)

  • flags must be a valid combination of FrameBoundaryFlagBitsEXT values

  • If imageCount is not 0, and pImages is not NULL, pImages must be a valid pointer to an array of imageCount valid Image handles

  • If bufferCount is not 0, and pBuffers is not NULL, pBuffers must be a valid pointer to an array of bufferCount valid Buffer handles

  • If tagSize is not 0, and pTag is not NULL, pTag must be a valid pointer to an array of tagSize bytes

  • Both of the elements of pBuffers, and the elements of pImages that are valid handles of non-ignored parameters must have been created, allocated, or retrieved from the same Device

Structure Chaining

Extends the structures

See Also

VK_EXT_frame_boundary, Buffer, FrameBoundaryFlagsEXT, Image, StructureType

Constructors

Instances4Show, FromCStruct, ToCStruct, Zero

VkPhysicalDeviceFrameBoundaryFeaturesEXT - Structure describing the frame boundary features that can be supported by an implementation

Members

This structure describes the following feature:

Description

If the PhysicalDeviceFrameBoundaryFeaturesEXT structure is included in the pNext chain of the PhysicalDeviceFeatures2 structure passed to getPhysicalDeviceFeatures2, it is filled in to indicate whether each corresponding feature is supported. If the application wishes to use a Device with any features described by PhysicalDeviceFrameBoundaryFeaturesEXT, it must add an instance of the structure, with the desired feature members set to TRUE, to the pNext chain of DeviceCreateInfo when creating the Device.

Structure Chaining

Extends the structures

See Also

VK_EXT_frame_boundary, Bool32, StructureType

Constructors

Instances6Eq, Show, Storable, FromCStruct, ToCStruct, Zero
newtypenewtype FrameBoundaryFlagBitsEXT
#

VkFrameBoundaryFlagBitsEXT - Bitmask specifying whether a queue submission is the last one for a given frame

Description

  • FRAME_BOUNDARY_FRAME_END_BIT_EXT specifies that this queue submission is the last one for this frame, i.e. once this queue submission has terminated, then the work for this frame is completed.

See Also

VK_EXT_frame_boundary, FrameBoundaryFlagsEXT

Instances8Eq, Ord, Read, Show, Bits, FiniteBits, …