Enum
VkSubgroupFeatureFlagBits
Bitmask describing what group operations are supported with subgroup scope
Bits which can be set in
VkPhysicalDeviceSubgroupProperties::supportedOperations
and
VkPhysicalDeviceVulkan11Properties::subgroupSupportedOperations
to specify supported group operations with
subgroup scope are:
typedef enum VkSubgroupFeatureFlagBits {
VK_SUBGROUP_FEATURE_BASIC_BIT = 0x00000001,
VK_SUBGROUP_FEATURE_VOTE_BIT = 0x00000002,
VK_SUBGROUP_FEATURE_ARITHMETIC_BIT = 0x00000004,
VK_SUBGROUP_FEATURE_BALLOT_BIT = 0x00000008,
VK_SUBGROUP_FEATURE_SHUFFLE_BIT = 0x00000010,
VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT = 0x00000020,
VK_SUBGROUP_FEATURE_CLUSTERED_BIT = 0x00000040,
VK_SUBGROUP_FEATURE_QUAD_BIT = 0x00000080,
} VkSubgroupFeatureFlagBits;
pub struct SubgroupFeatureFlagBits(u32);
impl SubgroupFeatureFlagBits {
pub const BASIC: Self = 0x00000001;
pub const VOTE: Self = 0x00000002;
pub const ARITHMETIC: Self = 0x00000004;
pub const BALLOT: Self = 0x00000008;
pub const SHUFFLE: Self = 0x00000010;
pub const SHUFFLE_RELATIVE: Self = 0x00000020;
pub const CLUSTERED: Self = 0x00000040;
pub const QUAD: Self = 0x00000080;
}
VK_SUBGROUP_FEATURE_BASIC_BITspecifies the device will accept SPIR-V shader modules containing theGroupNonUniformcapability.VK_SUBGROUP_FEATURE_VOTE_BITspecifies the device will accept SPIR-V shader modules containing theGroupNonUniformVotecapability.VK_SUBGROUP_FEATURE_ARITHMETIC_BITspecifies the device will accept SPIR-V shader modules containing theGroupNonUniformArithmeticcapability.VK_SUBGROUP_FEATURE_BALLOT_BITspecifies the device will accept SPIR-V shader modules containing theGroupNonUniformBallotcapability.VK_SUBGROUP_FEATURE_SHUFFLE_BITspecifies the device will accept SPIR-V shader modules containing theGroupNonUniformShufflecapability.VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BITspecifies the device will accept SPIR-V shader modules containing theGroupNonUniformShuffleRelativecapability.VK_SUBGROUP_FEATURE_CLUSTERED_BITspecifies the device will accept SPIR-V shader modules containing theGroupNonUniformClusteredcapability.VK_SUBGROUP_FEATURE_QUAD_BITspecifies the device will accept SPIR-V shader modules containing theGroupNonUniformQuadcapability.VK_SUBGROUP_FEATURE_PARTITIONED_BIT_EXTspecifies the device will accept SPIR-V shader modules containing theGroupNonUniformPartitionedEXTcapability.VK_SUBGROUP_FEATURE_ROTATE_BITspecifies the device will accept SPIR-V shader modules containing theGroupNonUniformRotateKHRcapability.VK_SUBGROUP_FEATURE_ROTATE_CLUSTERED_BITspecifies the device will accept SPIR-V shader modules that use theClusterSizeoperand toOpGroupNonUniformRotateKHR.
Parent
VK_VERSION_1_1Type
Enum