VkPipelineShaderStageRequiredSubgroupSizeCreateInfo(3)

# VkPipelineShaderStageRequiredSubgroupSizeCreateInfo(3) Manual Page

## Name

VkPipelineShaderStageRequiredSubgroupSizeCreateInfo - Structure specifying the required subgroup size of a newly created pipeline shader stage

Loading… please wait.

## C Specification

The `VkPipelineShaderStageRequiredSubgroupSizeCreateInfo` structure is defined as:

    // Provided by VK_VERSION_1_3
    typedef struct VkPipelineShaderStageRequiredSubgroupSizeCreateInfo {
        VkStructureType    sType;
        void*              pNext;
        uint32_t           requiredSubgroupSize;
    } VkPipelineShaderStageRequiredSubgroupSizeCreateInfo;

or the equivalent

    // Provided by VK_EXT_subgroup_size_control
    typedef VkPipelineShaderStageRequiredSubgroupSizeCreateInfo VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT;

or the equiavlent

    // Provided by VK_EXT_shader_object
    typedef VkPipelineShaderStageRequiredSubgroupSizeCreateInfo VkShaderRequiredSubgroupSizeCreateInfoEXT;

## Members

- `sType` is a VkStructureType value identifying this structure.

- `pNext` is `NULL` or a pointer to a structure extending this structure.

- `requiredSubgroupSize` is an unsigned integer value specifying the required subgroup size for the newly created pipeline shader stage.

## Description

If a `VkPipelineShaderStageRequiredSubgroupSizeCreateInfo` structure is included in the `pNext` chain of VkPipelineShaderStageCreateInfo, it specifies that the pipeline shader stage being compiled has a required subgroup size.

If a `VkShaderRequiredSubgroupSizeCreateInfoEXT` structure is included in the `pNext` chain of VkShaderCreateInfoEXT, it specifies that the shader being compiled has a required subgroup size.

Valid Usage

- VUID-VkPipelineShaderStageRequiredSubgroupSizeCreateInfo-requiredSubgroupSize-02760
  `requiredSubgroupSize` must be a power-of-two integer

- VUID-VkPipelineShaderStageRequiredSubgroupSizeCreateInfo-requiredSubgroupSize-02761
  `requiredSubgroupSize` must be greater or equal to `minSubgroupSize`

- VUID-VkPipelineShaderStageRequiredSubgroupSizeCreateInfo-requiredSubgroupSize-02762
  `requiredSubgroupSize` must be less than or equal to `maxSubgroupSize`

Valid Usage (Implicit)

- VUID-VkPipelineShaderStageRequiredSubgroupSizeCreateInfo-sType-sType
  `sType` must be `VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO`

## See Also

VK_EXT_subgroup_size_control, VK_VERSION_1_3, VkStructureType

## Document Notes

For more information, see the Vulkan Specification

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.

## Copyright

Copyright 2014-2024 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0