vulkan-3.13: Bindings to the Vulkan graphics API.
Safe HaskellNone
LanguageHaskell2010

Vulkan.Extensions.VK_NV_shader_sm_builtins

Description

Name

VK_NV_shader_sm_builtins - device extension

VK_NV_shader_sm_builtins

Name String
VK_NV_shader_sm_builtins
Extension Type
Device extension
Registered Extension Number
155
Revision
1
Extension and Version Dependencies
  • Requires Vulkan 1.1
Contact

Other Extension Metadata

Last Modified Date
2019-05-28
Interactions and External Dependencies
Contributors
  • Jeff Bolz, NVIDIA
  • Eric Werness, NVIDIA

Description

This extension provides the ability to determine device-specific properties on NVIDIA GPUs. It provides the number of streaming multiprocessors (SMs), the maximum number of warps (subgroups) that can run on an SM, and shader builtins to enable invocations to identify which SM and warp a shader invocation is executing on.

This extension enables support for the SPIR-V ShaderSMBuiltinsNV capability.

These properties and built-ins should typically only be used for debugging purposes.

New Structures

New Enum Constants

New or Modified Built-In Variables

New SPIR-V Capabilities

Issues

  1. What should we call this extension?

    RESOLVED: NV_shader_sm_builtins. Other options considered included:

    • NV_shader_smid - but SMID is really easy to typo/confuse as SIMD.
    • NV_shader_sm_info - but Info is typically reserved for input structures

Version History

  • Revision 1, 2019-05-28 (Daniel Koch)

    • Internal revisions

See Also

PhysicalDeviceShaderSMBuiltinsFeaturesNV, PhysicalDeviceShaderSMBuiltinsPropertiesNV

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.

Synopsis

Documentation

data PhysicalDeviceShaderSMBuiltinsPropertiesNV Source #

VkPhysicalDeviceShaderSMBuiltinsPropertiesNV - Structure describing shader SM Builtins properties supported by an implementation

Description

If the PhysicalDeviceShaderSMBuiltinsPropertiesNV structure is included in the pNext chain of the PhysicalDeviceProperties2 structure passed to getPhysicalDeviceProperties2, it is filled in with each corresponding implementation-dependent property.

Valid Usage (Implicit)

See Also

VK_NV_shader_sm_builtins, StructureType

Constructors

PhysicalDeviceShaderSMBuiltinsPropertiesNV 

Fields

Instances

Instances details
Eq PhysicalDeviceShaderSMBuiltinsPropertiesNV Source # 
Instance details

Defined in Vulkan.Extensions.VK_NV_shader_sm_builtins

Show PhysicalDeviceShaderSMBuiltinsPropertiesNV Source # 
Instance details

Defined in Vulkan.Extensions.VK_NV_shader_sm_builtins

Storable PhysicalDeviceShaderSMBuiltinsPropertiesNV Source # 
Instance details

Defined in Vulkan.Extensions.VK_NV_shader_sm_builtins

FromCStruct PhysicalDeviceShaderSMBuiltinsPropertiesNV Source # 
Instance details

Defined in Vulkan.Extensions.VK_NV_shader_sm_builtins

ToCStruct PhysicalDeviceShaderSMBuiltinsPropertiesNV Source # 
Instance details

Defined in Vulkan.Extensions.VK_NV_shader_sm_builtins

Zero PhysicalDeviceShaderSMBuiltinsPropertiesNV Source # 
Instance details

Defined in Vulkan.Extensions.VK_NV_shader_sm_builtins

data PhysicalDeviceShaderSMBuiltinsFeaturesNV Source #

VkPhysicalDeviceShaderSMBuiltinsFeaturesNV - Structure describing the shader SM Builtins features that can be supported by an implementation

Members

This structure describes the following feature:

Description

If the PhysicalDeviceShaderSMBuiltinsFeaturesNV 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. PhysicalDeviceShaderSMBuiltinsFeaturesNV can also be used in the pNext chain of DeviceCreateInfo to selectively enable these features.

Valid Usage (Implicit)

See Also

VK_NV_shader_sm_builtins, Bool32, StructureType

Constructors

PhysicalDeviceShaderSMBuiltinsFeaturesNV 

Fields

  • shaderSMBuiltins :: Bool

    shaderSMBuiltins indicates whether the implementation supports the SPIR-V ShaderSMBuiltinsNV capability.

Instances

Instances details
Eq PhysicalDeviceShaderSMBuiltinsFeaturesNV Source # 
Instance details

Defined in Vulkan.Extensions.VK_NV_shader_sm_builtins

Show PhysicalDeviceShaderSMBuiltinsFeaturesNV Source # 
Instance details

Defined in Vulkan.Extensions.VK_NV_shader_sm_builtins

Storable PhysicalDeviceShaderSMBuiltinsFeaturesNV Source # 
Instance details

Defined in Vulkan.Extensions.VK_NV_shader_sm_builtins

FromCStruct PhysicalDeviceShaderSMBuiltinsFeaturesNV Source # 
Instance details

Defined in Vulkan.Extensions.VK_NV_shader_sm_builtins

ToCStruct PhysicalDeviceShaderSMBuiltinsFeaturesNV Source # 
Instance details

Defined in Vulkan.Extensions.VK_NV_shader_sm_builtins

Zero PhysicalDeviceShaderSMBuiltinsFeaturesNV Source # 
Instance details

Defined in Vulkan.Extensions.VK_NV_shader_sm_builtins

type NV_SHADER_SM_BUILTINS_EXTENSION_NAME = "VK_NV_shader_sm_builtins" Source #

pattern NV_SHADER_SM_BUILTINS_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a Source #