# VK_ARM_performance_counters_by_region(3) Manual Page

## Name

VK_ARM_performance_counters_by_region - device extension

Loading… please wait.

## Registered Extension Number

606

## Revision

1

## Ratification Status

Not ratified

## Extension and Version Dependencies

VK_KHR_get_physical_device_properties2
or
Vulkan Version 1.1

## Special Use

- Developer tools

## Contact

- Jan-Harald Fredriksen [GitHub]janharaldfredriksen-arm

## Extension Proposal

VK_ARM_performance_counters_by_region

## Other Extension Metadata

Last Modified Date

  2025-09-09

IP Status

  No known IP claims.

Contributors

  - Jan-Harald Fredriksen, Arm Ltd.

  - Lisa Wu, Arm Ltd.

  - Ting Wei, Arm Ltd.

  - Nikunj Patel, Arm Ltd.

  - Peter Harris, Arm Ltd.

  - Camden Mannett, Arm Ltd.

## Description

This extension provides the ability to capture performance counters per region ('tile').

It exposes an enumeration of the available counters, and a way to request counters to be captured per render pass instance.

## New Commands

- vkEnumeratePhysicalDeviceQueueFamilyPerformanceCountersByRegionARM

## New Structures

- VkPerformanceCounterARM

- VkPerformanceCounterDescriptionARM

- Extending VkPhysicalDeviceFeatures2, VkDeviceCreateInfo:

  - VkPhysicalDevicePerformanceCountersByRegionFeaturesARM

- Extending VkPhysicalDeviceProperties2:

  - VkPhysicalDevicePerformanceCountersByRegionPropertiesARM

- Extending VkRenderPassBeginInfo, VkRenderingInfo:

  - VkRenderPassPerformanceCountersByRegionBeginInfoARM

## New Bitmasks

- VkPerformanceCounterDescriptionFlagsARM

## New Enum Constants

- `VK_ARM_PERFORMANCE_COUNTERS_BY_REGION_EXTENSION_NAME`

- `VK_ARM_PERFORMANCE_COUNTERS_BY_REGION_SPEC_VERSION`

- Extending VkStructureType:

  - `VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_ARM`

  - `VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_ARM`

  - `VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_COUNTERS_BY_REGION_FEATURES_ARM`

  - `VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_COUNTERS_BY_REGION_PROPERTIES_ARM`

  - `VK_STRUCTURE_TYPE_RENDER_PASS_PERFORMANCE_COUNTERS_BY_REGION_BEGIN_INFO_ARM`

## Issues

### What is the security model of this extension?

RESOLVED

The GPU hardware is able to run workloads from multiple applications concurrently. This introduces the possibility of side-channel leaks where one process can observe the side effects (e.g., memory pressure) of work done in another process.

To prevent such leaks when using this extension, the following is guaranteed:

1. Command buffers that capture performance counters are automatically executed in an “exclusive mode”, meaning that they do not run concurrently with workloads from any other process.

2. The physical device, at the level of hardware and firmware, guarantees that performance counters are only captured in “exclusive mode”, and otherwise returns zero for all counters.

Additionally, this performance counter mechanism only exposes shader core counters. Counters related to the external memory system or interactions between external memory and L2 caches are not available.

## Version History

- Revision 1, 2025-09-09 (Jan-Harald Fredriksen)

  - Initial draft.

## See Also

No cross-references are available

## Document Notes

For more information, see the Vulkan Specification.

This page is a generated document. Fixes and changes should be made to the generator scripts, not directly.

## Copyright

Copyright 2014-2025 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0