VK_KHR_vulkan_memory_model extension allows use of the features guarded by the VulkanMemoryModel, VulkanMemoryModelDeviceScope, and VulkanMemoryModelAvailabilityVisibilityChains capabilities in shader modules. The Vulkan Memory Model formally defines how to synchronize memory accesses to the same memory locations performed by multiple shader invocations.
Version 3 of the spec added a member (vulkanMemoryModelAvailabilityVisibilityChains) to VkPhysicalDeviceVulkanMemoryModelFeaturesKHR, which is an incompatible change from version 2.
All functionality in this extension is included in core Vulkan 1.2, with the KHR suffix omitted. However, if Vulkan 1.2 is supported and this extension is not, the vulkanMemoryModel capability is optional. The original type, enum and command names are still available as aliases of the core functionality.
VK_KHR_vulkan_memory_modelVK_KHR_get_physical_device_properties2SPV_KHR_vulkan_memory_model| Modifier and Type | Field and Description |
|---|---|
| public static final String | VK_KHR_VULKAN_MEMORY_MODEL_EXTENSION_NAME
The extension name. |
| public static final int | VK_KHR_VULKAN_MEMORY_MODEL_SPEC_VERSION
The extension specification version. |
| public static final int | VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES_KHR
Extends |
| Access | Constructor and Description |
|---|---|
| private |
| VK_KHR_VULKAN_MEMORY_MODEL_EXTENSION_NAME | back to summary |
|---|---|
| public static final String VK_KHR_VULKAN_MEMORY_MODEL_EXTENSION_NAME The extension name. | |
| VK_KHR_VULKAN_MEMORY_MODEL_SPEC_VERSION | back to summary |
|---|---|
| public static final int VK_KHR_VULKAN_MEMORY_MODEL_SPEC_VERSION The extension specification version. | |
| VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES_KHR | back to summary |
|---|---|
| public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES_KHR Extends | |
| KHRVulkanMemoryModel | back to summary |
|---|---|
| private KHRVulkanMemoryModel() | |