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

GHC 9.14.1 · lts/ghc-9.14.x · 45dd537 · 2026-10-11

Modulevulkan-3.27GHC2021

Vulkan.Extensions.VK_KHR_maintenance9

Name

VK_KHR_maintenance9 - device extension

VK_KHR_maintenance9

Name String

VK_KHR_maintenance9

Extension Type

Device extension

Registered Extension Number

585

Revision

1

Ratification Status

Ratified

Extension and Version Dependencies

VK_KHR_get_physical_device_properties2

or

Vulkan Version 1.1

Contact
Extension Proposal

VK_KHR_maintenance9

Other Extension Metadata

Last Modified Date

2025-05-29

Interactions and External Dependencies; Contributors
  • Mike Blumenkrantz, Valve

  • Shahbaz Youssefi, Google

  • Hans-Kristian Arntzen, Valve

  • Piers Daniell, NVIDIA

  • Daniel Story, Nintendo

  • Jeff Bolz, NVIDIA

Description

VK_KHR_maintenance9 adds a collection of minor features, none of which would warrant an entire extension of their own.

The new features are as follows:

  • Support VkDevice with no queues. These can be used as effectively an offline compiler to prepopulate pipeline caches, without expensive queue creation or internal memory allocations.

  • Allow cmdSetEvent2 to not provide a dependency, providing cmdSetEvent-style usage using enums from VK_KHR_synchronization2

  • Add a QueryPoolCreateFlagBits::QUERY_POOL_CREATE_RESET_BIT_KHR flag to create a query pool with all queries initialized to the reset state.

  • Allow any integer bit width for specific bit-wise operations.

  • Add a property to enable sparse support with VK_EXT_image_2d_view_of_3d.

  • Add a property to indicate the implementation will return (0,0,0,0) or (0,0,0,1) to vertex shaders that read unassigned attributes.

  • The effects of image memory barriers and image layout transitions on 3D images created with VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT are scoped to the slices specified by the user-provided VkImageSubresourceRange.

  • Queue family ownership transfers are no longer required for buffers and linear images, and a new physical device queue family property is exposed to indicate whether queue family ownership transfers are required for optimal images.

New Structures

New Enums

New Enum Constants

Issues

None.

Version History

  • Revision 1, 2025-05-29 (Contributors)

    • Internal revisions

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
  • Exports10
  • LanguageGHC2021
  • LicenceBSD-3-Clause
  • SourceVK_KHR_maintenance9.hs

VkPhysicalDeviceMaintenance9FeaturesKHR - Structure describing whether the implementation supports maintenance9 functionality

Members

This structure describes the following feature:

Description

If the PhysicalDeviceMaintenance9FeaturesKHR 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 PhysicalDeviceMaintenance9FeaturesKHR, 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_KHR_maintenance9, Bool32, StructureType

Constructors

  • PhysicalDeviceMaintenance9FeaturesKHR
    • maintenance9 :: Bool

      maintenance9 indicates that the implementation supports the following:

      • The restriction that certain bitfield SPIR-V instructions only operate on 32-bit integers is relaxed.

      • The value returned when a vertex shader reads an unbound vertex attribute is defined by way of the defaultVertexAttributeValue property.

      • A new QueryPoolCreateFlagBits::QUERY_POOL_CREATE_RESET_BIT_KHR flag can be used to initialize all queries in query pool to the reset state on creation.

      • cmdSetEvent2 may not provide a dependency other than the event src stage mask.

      • The effects of image memory barriers and image layout transitions on 3D images created with IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT are limited to only those slices specified in ImageSubresourceRange

      • A device can be created with no queues. This can be used for compiling pipelines or shaders for the purpose of filling pipeline caches.

      • Queue family ownership transfers are no longer required for buffers and linear images. For optimally tiled images, a new physical device query is added to check if resources created with SHARING_MODE_EXCLUSIVE can automatically transfer ownership between two queue families.

      • image2DViewOf3DSparse enables 2D views of 3D sparse images.

Instances6Eq, Show, Storable, FromCStruct, ToCStruct, Zero

VkPhysicalDeviceMaintenance9PropertiesKHR - Structure describing various implementation-defined properties introduced with VK_KHR_maintenance9

Members

  • pNext is NULL or a pointer to a structure extending this structure.

  • If the image2DViewOf3D feature is enabled, image2DViewOf3DSparse indicates whether the implementation supports binding a slice of a sparse 3D image to a 2D image view.

  • defaultVertexAttributeValue is a DefaultVertexAttributeValueKHR that indicates what value the implementation will return when the vertex shader reads unbound vertex attributes. Unbound attributes are those that have no corresponding VertexInputAttributeDescription::location defined in the bound graphics pipeline or no corresponding VertexInputAttributeDescription2EXT::location set by the most recent call to cmdSetVertexInputEXT when the state is dynamic .

Description

If the PhysicalDeviceMaintenance9PropertiesKHR structure is included in the pNext chain of the PhysicalDeviceProperties2 structure passed to getPhysicalDeviceProperties2, it is filled in with each corresponding implementation-dependent property.

Structure Chaining

Extends the structure

See Also

VK_KHR_maintenance9, Bool32, DefaultVertexAttributeValueKHR, StructureType

Instances6Eq, Show, Storable, FromCStruct, ToCStruct, Zero

VkQueueFamilyOwnershipTransferPropertiesKHR - Structure describing queue family ownership transfer properties

Description

If this structure is included in the pNext chain of the QueueFamilyProperties2 structure passed to getPhysicalDeviceQueueFamilyProperties2, then it is filled with the queue family ownership properties for the specified queue family.

Structure Chaining

Extends the structure

See Also

VK_KHR_maintenance9, StructureType

Constructors

Instances6Eq, Show, Storable, FromCStruct, ToCStruct, Zero

VkDefaultVertexAttributeValueKHR - Values returned for unbound vertex attributes

Description

See Also

VK_KHR_maintenance9, PhysicalDeviceMaintenance9PropertiesKHR

Instances6Eq, Ord, Read, Show, Storable, Zero