Function Prototype

vkEnumeratePhysicalDeviceShaderInstrumentationMetricsARM

Returns properties describing what shader instrumentation metrics are supported

To enumerate the available shader instrumentation metrics, call:

VkResult vkEnumeratePhysicalDeviceShaderInstrumentationMetricsARM(
    VkPhysicalDevice physicalDevice,
    uint32_t* pDescriptionCount,
    VkShaderInstrumentationMetricDescriptionARM* pDescriptions);
  • physicalDevice is the physical device.
  • pDescriptionCount is a pointer to an integer related to the number of shader instrumentation metrics available or queried.
  • pDescriptions is either NULL or a pointer to an array of VkShaderInstrumentationMetricDescriptionARM structures.

If pDescriptions is NULL, then the number of shader instrumentation metrics available is returned in pDescriptionCount. Otherwise, pDescriptionCount must point to a variable set by the application to the number of elements in the pDescriptions array, and on return the variable is overwritten with the number of structures actually written to pDescriptions. If pDescriptionCount is less than the number shader instrumentation metrics available, at most pDescriptionCount structures will be written, and VK_INCOMPLETE will be returned instead of VK_SUCCESS, to indicate that not all the available shader instrumentation metrics were returned.

Valid Usage (Implicit)

VUID-vkEnumeratePhysicalDeviceShaderInstrumentationMetricsARM-pDescriptionCount-parameter

pDescriptionCount must be a valid pointer to a uint32_t value

VUID-vkEnumeratePhysicalDeviceShaderInstrumentationMetricsARM-pDescriptions-parameter

If the value referenced by pDescriptionCount is not 0, and pDescriptions is not NULL, pDescriptions must be a valid pointer to an array of pDescriptionCount VkShaderInstrumentationMetricDescriptionARM structures