VkTensorCreateInfoARM(3)
C Specification
TheVkTensorCreateInfoARM structure is defined as:
// Provided by VK_ARM_tensorstypedef struct VkTensorCreateInfoARM { VkStructureType sType; const void* pNext; VkTensorCreateFlagsARM flags; const VkTensorDescriptionARM* pDescription; VkSharingMode sharingMode; uint32_t queueFamilyIndexCount; const uint32_t* pQueueFamilyIndices;} VkTensorCreateInfoARM;Members
sTypeis aVkStructureType value identifying this structure.pNextisNULLor a pointer to a structure extending thisstructure.flagsis a bitmask ofVkTensorCreateFlagBitsARM describingadditional parameters of the tensor.pDescriptionis a pointer to an instance ofVkTensorDescriptionARM describing the tensor.sharingModeis aVkSharingMode value specifying the sharingmode of the tensor when it will be accessed by multiple queue families.queueFamilyIndexCountis the number of entries in thepQueueFamilyIndicesarray.pQueueFamilyIndicesis a list of queue families that will accessthis tensor (ignored ifsharingModeis notVK_SHARING_MODE_CONCURRENT).
Description
To determine the set of validusage bits for a given tensor format,callvkGetPhysicalDeviceFormatProperties2 withVkTensorFormatPropertiesARM in thepNext chain.
Valid values for some tensor creation parameters are limited by a numericalupper bound or by inclusion in a bitset.
Several limiting values are defined below.The limiting values are referenced by the relevant valid usage statements ofVkTensorCreateInfoARM.
Let theuint64_t tensorElements define the number of data elementsin the tensor computed as the product of all
VkTensorCreateInfoARM::pDescription->pDimensions[i] for ibetween 0 andVkTensorCreateInfoARM::pDescription->dimensionCount- 1.
VUID-VkTensorCreateInfoARM-pDescription-09720
IfpDescription->tilingisVK_TENSOR_TILING_OPTIMAL_ARM,pDescription->pStridesmust beNULLVUID-VkTensorCreateInfoARM-tensorElements-09721
tensorElements(as defined inresources-tensor-creation-limits)must not be greater thanVkPhysicalDeviceTensorPropertiesARM::maxTensorElementsVUID-VkTensorCreateInfoARM-sharingMode-09722
IfsharingModeisVK_SHARING_MODE_CONCURRENT,pQueueFamilyIndicesmust be a valid pointer to an array ofqueueFamilyIndexCountuint32_tvaluesVUID-VkTensorCreateInfoARM-sharingMode-09723
IfsharingModeisVK_SHARING_MODE_CONCURRENT,queueFamilyIndexCountmust be greater than1VUID-VkTensorCreateInfoARM-sharingMode-09725
IfsharingModeisVK_SHARING_MODE_CONCURRENT, each elementofpQueueFamilyIndicesmust be unique andmust be less thanpQueueFamilyPropertyCountreturned by eithervkGetPhysicalDeviceQueueFamilyProperties orvkGetPhysicalDeviceQueueFamilyProperties2 for thephysicalDevicethat was used to createdeviceVUID-VkTensorCreateInfoARM-pNext-09864
If thepNextchain includes aVkExternalMemoryTensorCreateInfoARM structure, itshandleTypesmembermust only contain bits that are also inVkExternalTensorPropertiesARM::externalMemoryProperties.compatibleHandleTypes,as returned byvkGetPhysicalDeviceExternalTensorPropertiesARM withpExternalTensorInfo->handleTypeequal to any one of the handletypes specified inVkExternalMemoryTensorCreateInfoARM::handleTypesVUID-VkTensorCreateInfoARM-flags-09726
IfflagsincludesVK_TENSOR_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_ARM, thedescriptorBufferCaptureReplayfeaturemust be enabledVUID-VkTensorCreateInfoARM-pNext-09727
If thepNextchain includes aVkOpaqueCaptureDescriptorDataCreateInfoEXT structure,flagsmust containVK_TENSOR_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_ARMVUID-VkTensorCreateInfoARM-pDescription-09728
IfpDescription->usagedoes not have any of the following bits set(i.e. if it is not possible to create a tensor view for this tensor),then theformat featuresmustcontain the format feature flags required by theusageflags forpDescription->formatas indicated in theFormat Feature Dependent Usage Flags sectionVUID-VkTensorCreateInfoARM-protectedMemory-09729
If theprotectedMemoryfeature is notenabled,flagsmust not containVK_TENSOR_CREATE_PROTECTED_BIT_ARMVUID-VkTensorCreateInfoARM-flags-11395
IfVkOpaqueCaptureDataCreateInfoEXT::pData is notNULL,flagsmust containVK_TENSOR_CREATE_DESCRIPTOR_HEAP_CAPTURE_REPLAY_BIT_ARMVUID-VkTensorCreateInfoARM-flags-11396
IfflagscontainsVK_TENSOR_CREATE_DESCRIPTOR_HEAP_CAPTURE_REPLAY_BIT_ARM,VkOpaqueCaptureDataCreateInfoEXT::pData->sizemust be equaltoimageCaptureReplayOpaqueDataSize
VUID-VkTensorCreateInfoARM-sType-sType
sTypemust beVK_STRUCTURE_TYPE_TENSOR_CREATE_INFO_ARMVUID-VkTensorCreateInfoARM-pNext-pNext
EachpNextmember of any structure (including this one) in thepNextchainmust be eitherNULLor a pointer to a valid instance ofVkExternalMemoryTensorCreateInfoARM,VkOpaqueCaptureDataCreateInfoEXT, orVkOpaqueCaptureDescriptorDataCreateInfoEXTVUID-VkTensorCreateInfoARM-sType-unique
ThesTypevalue of each structure in thepNextchainmust be uniqueVUID-VkTensorCreateInfoARM-flags-parameter
flagsmust be a valid combination ofVkTensorCreateFlagBitsARM valuesVUID-VkTensorCreateInfoARM-pDescription-parameter
pDescriptionmust be a valid pointer to a validVkTensorDescriptionARM structureVUID-VkTensorCreateInfoARM-sharingMode-parameter
sharingModemust be a validVkSharingMode value
Document Notes
For more information, see theVulkan Specification.
This page is extracted from the Vulkan Specification.Fixes and changes should be made to the Specification, not directly.