# VkDataGraphPipelineConstantARM(3) Manual Page

## Name

VkDataGraphPipelineConstantARM - Structure specifying parameters of a data graph pipeline constant

Loading… please wait.

## C Specification

The `VkDataGraphPipelineConstantARM` structure is defined as:

    // Provided by VK_ARM_data_graph
    typedef struct VkDataGraphPipelineConstantARM {
        VkStructureType    sType;
        const void*        pNext;
        uint32_t           id;
        const void*        pConstantData;
    } VkDataGraphPipelineConstantARM;

## Members

- `sType` is a VkStructureType value identifying this structure.

- `pNext` is a pointer to a structure extending this structure.

- `id` is the unique identifier of the graph constant this structure describes.

- `pConstantData` is a pointer to the data for this graph constant.

## Description

The size and layout of the data pointed to by `pConstantData` is specified by a specific structure in the `pNext` chain for each type of graph constant.

For graph constants of tensor type, the layout of the data is specified by a VkTensorDescriptionARM structure. The data must be laid out according to the following members of this structure:

- VkTensorDescriptionARM::`tiling`

- VkTensorDescriptionARM::`format`

- VkTensorDescriptionARM::`dimensionCount`

- VkTensorDescriptionARM::`pDimensions`

- VkTensorDescriptionARM::`pStrides`

The presence of a VkDataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM structure in the `pNext` chain has no impact on the expected layout of the data pointed to by `pConstantData`.

Valid Usage

- VUID-VkDataGraphPipelineConstantARM-pNext-09775
  If the `pNext` chain of this structure includes one or more VkDataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM structures then it must also include a VkTensorDescriptionARM structure

- VUID-VkDataGraphPipelineConstantARM-pNext-09776
  If the `pNext` chain of this structure includes one or more VkDataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM structures then, for each structure, VkDataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM::`dimension` must be less than VkTensorDescriptionARM::`dimensionCount`

- VUID-VkDataGraphPipelineConstantARM-pNext-09777
  If the `pNext` chain of this structure includes a VkDataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM structure then, for each structure, VkTensorDescriptionARM::`pDimensions`[VkDataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM::`dimension`] must be a multiple of VkDataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM::`groupSize`

- VUID-VkDataGraphPipelineConstantARM-pNext-09870
  If the `pNext` chain of this structure includes multiple VkDataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM structures then no two structures may have their VkDataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM::`dimension` member set to the same value

- VUID-VkDataGraphPipelineConstantARM-id-09850
  If `id` corresponds to a graph constant of tensor type, then a VkTensorDescriptionARM structure whose `usage` member contains `VK_TENSOR_USAGE_DATA_GRAPH_BIT_ARM` must be included in the `pNext` chain

- VUID-VkDataGraphPipelineConstantARM-pNext-09917
  If the `pNext` chain of this structure includes a VkTensorDescriptionARM structure, then its `tiling` member must be `VK_TENSOR_TILING_LINEAR_ARM`

Valid Usage (Implicit)

- VUID-VkDataGraphPipelineConstantARM-sType-sType
  `sType` must be `VK_STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_CONSTANT_ARM`

- VUID-VkDataGraphPipelineConstantARM-pNext-pNext
  Each `pNext` member of any structure (including this one) in the `pNext` chain must be either `NULL` or a pointer to a valid instance of VkDataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM or VkTensorDescriptionARM

- VUID-VkDataGraphPipelineConstantARM-sType-unique
  The `sType` value of each structure in the `pNext` chain must be unique, with the exception of structures of type VkDataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM

- VUID-VkDataGraphPipelineConstantARM-pConstantData-parameter
  `pConstantData` must be a pointer value

## See Also

VK_ARM_data_graph, VkDataGraphPipelineShaderModuleCreateInfoARM, VkStructureType

## 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-2025 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0