mirror of
https://github.com/status-im/Vulkan-Docs.git
synced 2025-01-11 14:34:08 +00:00
ad46c7dc68
* Update release number to 111. Github Issues: * Clean up flink:vkGetPhysicalDeviceSurfaceFormatsKHR and flink:vkGetPhysicalDeviceSurfaceFormats2KHR to drop the ename:VK_FORMAT_UNDEFINED case, require callers pass a supported surface, and rearrange some validation-related language (public issue 207). * Allow dynamic and nonuniform indexing of acceleration structures in the <<interfaces-resources-descset, Descriptor Set Interface>> section (public KhronosGroup/glslang issue 1766). Internal Issues: * Clarify when images require the use of YCbCr samplers for slink:VkWriteDescriptorSet and slink:VkImageViewCreateInfo (internal issue 1639). * Remove the "`block`" language around <<features-robustBufferAccess, vectorizing and robust buffer access>> (internal issue 1642). * Allow code:OpTypeImageFormat == code:Unknown for input attachments in the <<interfaces-resources-descset, Descriptor Set Interface>> section (internal issue 1645). * Fix asciidoctor conditionals around ename:VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT in the <<fundamentals-errorcodes>> section (internal issue 1679). * Remove error codes from `vk.xml` for flink:vkUninitializePerformanceApiINTEL, which has a `void` return type (internal issue 1704). * Various subgroup-related fixes in the <<spirvenv-capabilities, Capabilities>>, <<shaders-subgroup-arithmetic, Arithmetic Subgroup Operations>>, <<shaders-subgroup-clustered, Clustered Subgroup Operations>>, and <<shaders-subgroup-partitioned, Partitioned Subgroup Operations>> sections (internal merge request 3164). * Fix asciidoctor markup affecting math rendering in the <<Precision of core SPIR-V Instructions>> table (internal merge request 3166). * Fix incorrect reference to flink:vkGetPhysicalDeviceFeatures2KHR in the description of slink:VkPhysicalDeviceASTCDecodeFeaturesEXT (internal merge request 3169). * Fix a non-sentence in the introduction to the <<textures, Image Operations Overview>> section (internal merge request 3184). * Minor markup, grammar, and typo fixes for the `<<NV_shader_sm_builtins>>` extension spec language (internal merge request 3189). * Clarify that 1D and 1D array format support is optional for cubic filters, immediately following the <<formats-mandatory-features-astc, Mandatory ASTC LDR format support>> table (internal merge request 3194).
87 lines
2.2 KiB
Plaintext
87 lines
2.2 KiB
Plaintext
include::meta/VK_NV_shader_sm_builtins.txt[]
|
|
|
|
*Last Modified Date*::
|
|
2019-05-28
|
|
|
|
*Interactions and External Dependencies*::
|
|
- This extension requires
|
|
http://htmlpreview.github.io/?https://github.com/KhronosGroup/SPIRV-Registry/blob/master/extensions/NV/SPV_NV_shader_sm_builtins.html[+SPV_NV_shader_sm_builtins+].
|
|
- This extension enables
|
|
https://github.com/KhronosGroup/GLSL/blob/master/extensions/nv/GLSL_NV_shader_sm_builtins.txt[+GL_NV_shader_sm_builtins+]
|
|
for GLSL source languages.
|
|
|
|
*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 code:ShaderSMBuiltinsNV
|
|
capability.
|
|
|
|
These properties and built-ins should: typically only be used for debugging
|
|
purposes.
|
|
|
|
|
|
=== New Object Types
|
|
|
|
None.
|
|
|
|
=== New Enum Constants
|
|
|
|
* Extending elink:VkStructureType:
|
|
** ename:VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV
|
|
** ename:VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV
|
|
|
|
=== New Enums
|
|
|
|
None.
|
|
|
|
=== New Structures
|
|
|
|
* slink:VkPhysicalDeviceShaderSMBuiltinsFeaturesNV
|
|
* slink:VkPhysicalDeviceShaderSMBuiltinsPropertiesNV
|
|
|
|
=== New Functions
|
|
|
|
None.
|
|
|
|
=== New or Modified Built-In Variables
|
|
|
|
* <<interfaces-builtin-variables-warpspersmnv,code:WarpsPerSMNV>>
|
|
* <<interfaces-builtin-variables-smcountnv,code:SMCountNV>>
|
|
* <<interfaces-builtin-variables-warpidnv,code:WarpIDNV>>
|
|
* <<interfaces-builtin-variables-smidnv,code:SMIDNV>>
|
|
|
|
=== New SPIR-V Capabilities
|
|
|
|
* <<spirvenv-capabilities-table-shadersmbuiltins,code:ShaderSMBuiltinsNV>>
|
|
|
|
=== Issues
|
|
. What should we call this extension?
|
|
+
|
|
--
|
|
RESOLVED: Using 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
|
|
|
|
|