vkGetPhysicalDeviceQueueFamilyDataGraphEngineOperationPropertiesARM(3)

# vkGetPhysicalDeviceQueueFamilyDataGraphEngineOperationPropertiesARM(3) Manual Page

## Name

vkGetPhysicalDeviceQueueFamilyDataGraphEngineOperationPropertiesARM - Query the properties of a data graph processing engine and operation set combination for a specific queue family of a physical device

## C Specification

To query the properties of a data graph processing engine and operation set combination for a specific queue family of a physical device, call:

    // Provided by VK_ARM_data_graph_instruction_set_tosa, VK_ARM_data_graph_optical_flow
    VkResult vkGetPhysicalDeviceQueueFamilyDataGraphEngineOperationPropertiesARM(
        VkPhysicalDevice                            physicalDevice,
        uint32_t                                    queueFamilyIndex,
        const VkQueueFamilyDataGraphPropertiesARM*  pQueueFamilyDataGraphProperties,
        VkBaseOutStructure*                         pProperties);

## Parameters

- `physicalDevice` is the physical device to query.

- `queueFamilyIndex` is the index of the queue family being queried.

- `pQueueFamilyDataGraphProperties` is a pointer to a VkQueueFamilyDataGraphPropertiesARM structure that selects the processing engine and operation set for which the properties are queried.

- `pProperties` is a pointer to a structure in which the properties are returned.

## Description

Valid property queries for specific engines and operations

Engine | Operation Type | Operation Name | Operation Version | Property structure
--- | --- | --- | --- | ---
Any | Any | `TOSA.XXXXXX.X` where `X` is a digit between 0 and 9 | Any | VkQueueFamilyDataGraphTOSAPropertiesARM
Any | Any | `OpticalFlow` | Any | VkQueueFamilyDataGraphOpticalFlowPropertiesARM

Valid Usage

- VUID-vkGetPhysicalDeviceQueueFamilyDataGraphEngineOperationPropertiesARM-pQueueFamilyDataGraphProperties-09957
  The VkQueueFamilyDataGraphPropertiesARM structure pointed to by `pQueueFamilyDataGraphProperties` must have been obtained by a prior call to vkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARM with the same `physicalDevice` and `queueFamilyIndex`

- VUID-vkGetPhysicalDeviceQueueFamilyDataGraphEngineOperationPropertiesARM-pProperties-09958
  `pProperties` must be a valid structure of the appropriate type as defined in https://registry.khronos.org/vulkan/specs/latest/html/vkspec.html#graphs-valid-engine-operation-queries

Valid Usage (Implicit)

- VUID-vkGetPhysicalDeviceQueueFamilyDataGraphEngineOperationPropertiesARM-physicalDevice-parameter
  `physicalDevice` must be a valid VkPhysicalDevice handle

- VUID-vkGetPhysicalDeviceQueueFamilyDataGraphEngineOperationPropertiesARM-pQueueFamilyDataGraphProperties-parameter
  `pQueueFamilyDataGraphProperties` must be a valid pointer to a valid VkQueueFamilyDataGraphPropertiesARM structure

Return Codes

On success, this command returns

  - VK_SUCCESS

On failure, this command returns

  - VK_ERROR_OUT_OF_DEVICE_MEMORY

  - VK_ERROR_OUT_OF_HOST_MEMORY

  - VK_ERROR_UNKNOWN

  - VK_ERROR_VALIDATION_FAILED

## See Also

VK_ARM_data_graph_instruction_set_tosa, VK_ARM_data_graph_optical_flow, VkBaseOutStructure, VkPhysicalDevice, VkQueueFamilyDataGraphPropertiesARM

## 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

Copyright 2014-2026 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0