C Specification

The shader instrumentation metrics block header is defined as:

// Provided by VK_ARM_shader_instrumentation
typedef struct VkShaderInstrumentationMetricDataHeaderARM {
    uint32_t              resultIndex;
    uint32_t              resultSubIndex;
    VkShaderStageFlags    stages;
    uint32_t              basicBlockIndex;
} VkShaderInstrumentationMetricDataHeaderARM;

Members

  • resultIndex is the result index of the metric block, as captured when the command was recorded.

  • resultSubIndex is a secondary index with the result index, explained further below.

  • stages is a bitfield of VkShaderStageFlagBits describing the shader stages that the metric block is for.

  • basicBlockIndex is the index of the basic block within the shader that the metric block is for.

Description

Valid Usage (Implicit)
  • VUID-VkShaderInstrumentationMetricDataHeaderARM-stages-parameter
    stages must be a valid combination of VkShaderStageFlagBits values

  • VUID-VkShaderInstrumentationMetricDataHeaderARM-stages-requiredbitmask
    stages must not be 0

See Also

Document Notes

For more information, see the Vulkan Specification.

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.

Copyright 2014-2026 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0