• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright 2017-2022 The Khronos Group Inc.
2//
3// SPDX-License-Identifier: CC-BY-4.0
4
5include::{generated}/meta/{refprefix}VK_KHR_shader_clock.adoc[]
6
7=== Other Extension Metadata
8
9*Last Modified Date*::
10    2019-4-25
11*IP Status*::
12    No known IP claims.
13*Interactions and External Dependencies*::
14  - This extension requires
15    {spirv}/KHR/SPV_KHR_shader_clock.html[`SPV_KHR_shader_clock`].
16  - This extension provides API support for
17    {GLregistry}/ARB/ARB_shader_clock.txt[`ARB_shader_clock`] and
18    {GLSLregistry}/ext/GL_EXT_shader_realtime_clock.txt[`EXT_shader_realtime_clock`]
19*Contributors*::
20  - Aaron Hagan, AMD
21  - Daniel Koch, NVIDIA
22
23=== Description
24
25This extension advertises the SPIR-V code:ShaderClockKHR capability for
26Vulkan, which allows a shader to query a real-time or monotonically
27incrementing counter at the subgroup level or across the device level.
28The two valid SPIR-V scopes for code:OpReadClockKHR are code:Subgroup and
29code:Device.
30
31When using GLSL source-based shading languages, the code:clockRealtime*EXT()
32timing functions map to the code:OpReadClockKHR instruction with a scope of
33code:Device, and the code:clock*ARB() timing functions map to the
34code:OpReadClockKHR instruction with a scope of code:Subgroup.
35
36include::{generated}/interfaces/VK_KHR_shader_clock.adoc[]
37
38=== New SPIR-V Capabilities
39
40  * <<spirvenv-capabilities-table-ShaderClockKHR, code:ShaderClockKHR>>
41
42=== Version History
43
44  * Revision 1, 2019-4-25 (Aaron Hagan)
45  ** Initial revision
46