C Specification

The VkTensorCreateInfoARM structure is defined as:

// Provided by VK_ARM_tensors
typedef struct VkTensorCreateInfoARM {
    VkStructureType                  sType;
    const void*                      pNext;
    VkTensorCreateFlagsARM           flags;
    const VkTensorDescriptionARM*    pDescription;
    VkSharingMode                    sharingMode;
    uint32_t                         queueFamilyIndexCount;
    const uint32_t*                  pQueueFamilyIndices;
} VkTensorCreateInfoARM;

Members

  • sType is a VkStructureType value identifying this structure.

  • pNext is NULL or a pointer to a structure extending this structure.

  • flags is a bitmask of VkTensorCreateFlagBitsARM describing additional parameters of the tensor.

  • pDescription is a pointer to an instance of VkTensorDescriptionARM describing the tensor.

  • sharingMode is a VkSharingMode value specifying the sharing mode of the tensor when it will be accessed by multiple queue families.

  • queueFamilyIndexCount is the number of entries in the pQueueFamilyIndices array.

  • pQueueFamilyIndices is a list of queue families that will access this tensor (ignored if sharingMode is not VK_SHARING_MODE_CONCURRENT).

Description

To determine the set of valid usage bits for a given tensor format, call vkGetPhysicalDeviceFormatProperties2 with VkTensorFormatPropertiesARM in the pNext chain.

Tensor Creation Limits

Valid values for some tensor creation parameters are limited by a numerical upper bound or by inclusion in a bitset.

Several limiting values are defined below. The limiting values are referenced by the relevant valid usage statements of VkTensorCreateInfoARM.

  • Let the uint64_t tensorElements define the number of data elements in the tensor computed as the product of all VkTensorCreateInfoARM::pDescription::pDimensions[i] for i between 0 and VkTensorCreateInfoARM::pDescription::dimensionCount - 1.

Valid Usage
Valid Usage (Implicit)
  • VUID-VkTensorCreateInfoARM-sType-sType
    sType must be VK_STRUCTURE_TYPE_TENSOR_CREATE_INFO_ARM

  • VUID-VkTensorCreateInfoARM-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 VkExternalMemoryTensorCreateInfoARM or VkOpaqueCaptureDescriptorDataCreateInfoEXT

  • VUID-VkTensorCreateInfoARM-sType-unique
    The sType value of each structure in the pNext chain must be unique

  • VUID-VkTensorCreateInfoARM-flags-parameter
    flags must be a valid combination of VkTensorCreateFlagBitsARM values

  • VUID-VkTensorCreateInfoARM-pDescription-parameter
    pDescription must be a valid pointer to a valid VkTensorDescriptionARM structure

  • VUID-VkTensorCreateInfoARM-sharingMode-parameter
    sharingMode must be a valid VkSharingMode value

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

SPDX-License-Identifier: CC-BY-4.0