mirror of
https://github.com/status-im/Vulkan-Docs.git
synced 2025-02-26 04:55:12 +00:00
* Update release number to 124. Github Issues: * Fix Makefile SPECREMARK macro to work when not building in a git tree (public issue 992). * Ignore pname:aspectMask for unused attachments in slink:VkSubpassDescription2KHR valid usage statements (public pull request 1028). * Minor markup / spelling fixes (public pull requests 1035, 1045). Internal Issues: * Fix markup in Valid Usage statement for slink:VkCreateFramebuffer (internal issue 1823). * Add a new <<synchronization-signal-operation-order, _signal operation order_>> section to the synchronization chapter which describes in detail the ordering guarantees provided by the API between fence and semaphore signal operations (internal merge request 3368). * Move generated `appendix/meta/` files into the Makefile GENERATED directory (internal merge request 3381). New Extensions * `<<VK_KHR_shader_clock>>` * `<<VK_KHR_timeline_semaphore>>`
87 lines
2.1 KiB
Plaintext
87 lines
2.1 KiB
Plaintext
include::{generated}/meta/VK_NV_shader_sm_builtins.txt[]
|
|
|
|
*Last Modified Date*::
|
|
2019-05-28
|
|
|
|
*Interactions and External Dependencies*::
|
|
- This extension requires
|
|
{spirv}/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
|
|
|
|
|