Class KHRWorkgroupMemoryExplicitLayout

java.lang.Object
org.lwjgl.vulkan.KHRWorkgroupMemoryExplicitLayout

public final class KHRWorkgroupMemoryExplicitLayout extends Object
This extension adds Vulkan support for the SPV_KHR_workgroup_memory_explicit_layout SPIR-V extension, which allows shaders to explicitly define the layout of Workgroup storage class memory and create aliases between variables from that storage class in a compute shader.

The aliasing feature allows different “views” on the same data, so the shader can bulk copy data from another storage class using one type (e.g. an array of large vectors), and then use the data with a more specific type. It also enables reducing the amount of workgroup memory consumed by allowing the shader to alias data whose lifetimes do not overlap.

The explicit layout support and some form of aliasing is also required for layering OpenCL on top of Vulkan.

Name String
VK_KHR_workgroup_memory_explicit_layout
Extension Type
Device extension
Registered Extension Number
337
Revision
1
Extension and Version Dependencies
VK_KHR_get_physical_device_properties2 or Version 1.1
SPIR-V Dependencies
Contact
  • Caio Marcelo de Oliveira Filho cmarcelo
Other Extension Metadata
Last Modified Date
2020-06-01
IP Status
No known IP claims.
Interactions and External Dependencies
Contributors
  • Caio Marcelo de Oliveira Filho, Intel
  • Jeff Bolz, NVIDIA
  • Graeme Leese, Broadcom
  • Faith Ekstrand, Intel
  • Daniel Koch, NVIDIA
  • Field Details

    • VK_KHR_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_SPEC_VERSION

      public static final int VK_KHR_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_SPEC_VERSION
      The extension specification version.
      See Also:
    • VK_KHR_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_EXTENSION_NAME

      public static final String VK_KHR_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_EXTENSION_NAME
      The extension name.
      See Also:
    • VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR

      public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR
      Extends VkStructureType.
      See Also: