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

GHC 10.0.0.20260917 · lts/ghc-10.0.x · fc4e598 · 2026-10-11

Modulevulkan-3.27GHC2021

Vulkan.Extensions.VK_EXT_buffer_device_address

Name

VK_EXT_buffer_device_address - device extension

VK_EXT_buffer_device_address

Name String

VK_EXT_buffer_device_address

Extension Type

Device extension

Registered Extension Number

245

Revision

2

Ratification Status

Not ratified

Extension and Version Dependencies

VK_KHR_get_physical_device_properties2

or

Vulkan Version 1.1

SPIR-V Dependencies
Deprecation State
Contact

Other Extension Metadata

Last Modified Date

2019-01-06

IP Status

No known IP claims.

Interactions and External Dependencies
Contributors
  • Jeff Bolz, NVIDIA

  • Neil Henning, AMD

  • Tobias Hector, AMD

  • Faith Ekstrand, Intel

  • Baldur Karlsson, Valve

Description

This extension allows the application to query a 64-bit buffer device address value for a buffer, which can be used to access the buffer memory via the PhysicalStorageBufferEXT storage class in the GL_EXT_buffer_reference GLSL extension and SPV_EXT_physical_storage_buffer SPIR-V extension.

It also allows buffer device addresses to be provided by a trace replay tool, so that it matches the address used when the trace was captured.

New Commands

New Structures

New Enum Constants

New SPIR-V Capabilities

Issues

1) Where is VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_ADDRESS_FEATURES_EXT and VkPhysicalDeviceBufferAddressFeaturesEXT?

RESOLVED: They were renamed as STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT and PhysicalDeviceBufferDeviceAddressFeaturesEXT accordingly for consistency. Even though, the old names can still be found in the generated header files for compatibility.

Version History

  • Revision 1, 2018-11-01 (Jeff Bolz)

    • Internal revisions

  • Revision 2, 2019-01-06 (Jon Leech)

    • Minor updates to appendix for publication

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
  • 1 value
  • Packagevulkan-3.27
  • Exports14
  • LanguageGHC2021
  • LicenceBSD-3-Clause
  • SourceVK_EXT_buffer_device_address.hs

VkPhysicalDeviceBufferDeviceAddressFeaturesEXT - Structure describing buffer address features that can be supported by an implementation

Members

This structure describes the following features:

Description

If the PhysicalDeviceBufferDeviceAddressFeaturesEXT 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 PhysicalDeviceBufferDeviceAddressFeaturesEXT, 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.

The PhysicalDeviceBufferDeviceAddressFeaturesEXT structure has the same members as the PhysicalDeviceBufferDeviceAddressFeatures structure, but the functionality indicated by the members is expressed differently. The features indicated by the PhysicalDeviceBufferDeviceAddressFeatures structure requires additional flags to be passed at memory allocation time, and the capture and replay mechanism is built around opaque capture addresses for buffer and memory objects.

Structure Chaining

Extends the structures

See Also

VK_EXT_buffer_device_address, Bool32, StructureType

Constructors

Instances6Eq, Show, Storable, FromCStruct, ToCStruct, Zero

VkBufferDeviceAddressCreateInfoEXT - Request a specific address for a buffer

Description

If deviceAddress is zero, no specific address is requested.

If deviceAddress is not zero, then it must be an address retrieved from an identically created buffer on the same implementation. The buffer must also be bound to an identically created DeviceMemory object.

If this structure is not present, it is as if deviceAddress is zero.

Applications should avoid creating buffers with application-provided addresses and implementation-provided addresses in the same process, to reduce the likelihood of ERROR_INVALID_DEVICE_ADDRESS_EXT errors.

Valid Usage (Implicit)

  • If deviceAddress is not 0, deviceAddress must be a valid DeviceAddress value

Structure Chaining

Extends the structure

See Also

VK_EXT_buffer_device_address, DeviceAddress, StructureType

Constructors

Instances6Eq, Show, Storable, FromCStruct, ToCStruct, Zero