vulkan
Safe HaskellNone
LanguageHaskell2010

Vulkan.Extensions.VK_QCOM_data_graph_model

Description

Name

VK_QCOM_data_graph_model - device extension

VK_QCOM_data_graph_model

Name String
VK_QCOM_data_graph_model
Extension Type
Device extension
Registered Extension Number
630
Revision
1
Ratification Status
Not ratified
Extension and Version Dependencies
VK_ARM_data_graph
Contact
Extension Proposal
VK_QCOM_data_graph_model

Other Extension Metadata

Last Modified Date
2025-06-24
Interactions and External Dependencies
  • This extension interacts with VK_ARM_tensors
Contributors
  • Matthew Netsch, Qualcomm Technologies, Inc
  • Rob VanReenen, Qualcomm Technologies, Inc
  • Balaji Calidas, Qualcomm Technologies, Inc
  • Jacob Yenney, Qualcomm Technologies, Inc
  • Kévin Petit, Arm Ltd.

Description

This extension supports new PhysicalDeviceDataGraphProcessingEngineTypeARM, and PhysicalDeviceDataGraphOperationTypeARM types for data graph pipelines added in VK_ARM_data_graph.

A new pipeline cache type is also added to seamlessly import ML models such as ONNX through QNN workflow, and run them on the device or an external compute engine.

New Structures

New Enums

New Enum Constants

Version History

  • Revision 1, 2025-06-24 (Matthew Netsch)

    • Initial revision

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.

Synopsis

Documentation

data PipelineCacheHeaderVersionDataGraphQCOM Source #

VkPipelineCacheHeaderVersionDataGraphQCOM - Structure describing the layout of the pipeline cache header for data graphs

Description

The application should verify that the header info is compatible with the DataGraphProcessingEngineCreateInfoARM passed during pipeline creation. Implementations may return PIPELINE_COMPILE_REQUIRED_EXT from createDataGraphPipelinesARM if the cache is not compatible.

This cache type is built using offline compilation, therefore Vulkan does not define engine compatibility. The application should refer to the offline compiler used to create the cache for guidance on compatibility.

Unlike most structures declared by the Vulkan API, all fields of this structure are written with the least significant byte first, regardless of host byte-order.

The C language specification does not define the packing of structure members. This layout assumes tight structure member packing, with members laid out in the order listed in the structure, and the intended size of the structure is 28 bytes. If a compiler produces code that diverges from that pattern, applications must employ another method to set values at the correct offsets.

Valid Usage

Valid Usage (Implicit)

See Also

VK_QCOM_data_graph_model, DataGraphModelCacheTypeQCOM, PipelineCacheHeaderVersion

Constructors

PipelineCacheHeaderVersionDataGraphQCOM 

Fields

Instances

Instances details
Storable PipelineCacheHeaderVersionDataGraphQCOM Source # 
Instance details

Defined in Vulkan.Extensions.VK_QCOM_data_graph_model

Show PipelineCacheHeaderVersionDataGraphQCOM Source # 
Instance details

Defined in Vulkan.Extensions.VK_QCOM_data_graph_model

FromCStruct PipelineCacheHeaderVersionDataGraphQCOM Source # 
Instance details

Defined in Vulkan.Extensions.VK_QCOM_data_graph_model

ToCStruct PipelineCacheHeaderVersionDataGraphQCOM Source # 
Instance details

Defined in Vulkan.Extensions.VK_QCOM_data_graph_model

Zero PipelineCacheHeaderVersionDataGraphQCOM Source # 
Instance details

Defined in Vulkan.Extensions.VK_QCOM_data_graph_model

data DataGraphPipelineBuiltinModelCreateInfoQCOM Source #

VkDataGraphPipelineBuiltinModelCreateInfoQCOM - Structure specifying a built-in model for the newly created data graph pipeline

Description

The pipelineCache is ignored for the creation of this pipeline.

Applications can specify arguments to the built-in operation named in pOperation with DataGraphPipelineCompilerControlCreateInfoARM.

Applications should verify that the pVendorOptions, layout, and other state included with this pipeline creation are compatible with the pOperation. Implementations may fail if any state is not compatible and return PIPELINE_COMPILE_REQUIRED.

Built-in models are defined by the provider of the model, therefore Vulkan does not define model compatibility. The application should refer to the provider of the built-in model for guidance on compatibility.

Valid Usage

Valid Usage (Implicit)

See Also

VK_QCOM_data_graph_model, PhysicalDeviceDataGraphOperationSupportARM, StructureType

data PhysicalDeviceDataGraphModelFeaturesQCOM Source #

VkPhysicalDeviceDataGraphModelFeaturesQCOM - Structure describing features to control data graph model

Description

If the PhysicalDeviceDataGraphModelFeaturesQCOM structure is included in the pNext chain of the PhysicalDeviceFeatures2 structure passed to getPhysicalDeviceFeatures2, it is filled in to indicate whether each corresponding feature is supported. If the application wishes to use a Device with any features described by PhysicalDeviceDataGraphModelFeaturesQCOM, it must add an instance of the structure, with the desired feature members set to TRUE, to the pNext chain of DeviceCreateInfo when creating the Device.

Valid Usage (Implicit)

See Also

VK_QCOM_data_graph_model, Bool32, StructureType

Constructors

PhysicalDeviceDataGraphModelFeaturesQCOM 

Fields

Instances

Instances details
Eq PhysicalDeviceDataGraphModelFeaturesQCOM Source # 
Instance details

Defined in Vulkan.Extensions.VK_QCOM_data_graph_model

Storable PhysicalDeviceDataGraphModelFeaturesQCOM Source # 
Instance details

Defined in Vulkan.Extensions.VK_QCOM_data_graph_model

Show PhysicalDeviceDataGraphModelFeaturesQCOM Source # 
Instance details

Defined in Vulkan.Extensions.VK_QCOM_data_graph_model

FromCStruct PhysicalDeviceDataGraphModelFeaturesQCOM Source # 
Instance details

Defined in Vulkan.Extensions.VK_QCOM_data_graph_model

ToCStruct PhysicalDeviceDataGraphModelFeaturesQCOM Source # 
Instance details

Defined in Vulkan.Extensions.VK_QCOM_data_graph_model

Zero PhysicalDeviceDataGraphModelFeaturesQCOM Source # 
Instance details

Defined in Vulkan.Extensions.VK_QCOM_data_graph_model

newtype DataGraphModelCacheTypeQCOM Source #

VkDataGraphModelCacheTypeQCOM - Encode pipeline data graph cache type

Description

See Also

VK_QCOM_data_graph_model, PipelineCacheHeaderVersionDataGraphQCOM

Instances

Instances details
Eq DataGraphModelCacheTypeQCOM Source # 
Instance details

Defined in Vulkan.Extensions.VK_QCOM_data_graph_model

Ord DataGraphModelCacheTypeQCOM Source # 
Instance details

Defined in Vulkan.Extensions.VK_QCOM_data_graph_model

Storable DataGraphModelCacheTypeQCOM Source # 
Instance details

Defined in Vulkan.Extensions.VK_QCOM_data_graph_model

Read DataGraphModelCacheTypeQCOM Source # 
Instance details

Defined in Vulkan.Extensions.VK_QCOM_data_graph_model

Show DataGraphModelCacheTypeQCOM Source # 
Instance details

Defined in Vulkan.Extensions.VK_QCOM_data_graph_model

Zero DataGraphModelCacheTypeQCOM Source # 
Instance details

Defined in Vulkan.Extensions.VK_QCOM_data_graph_model

type QCOM_DATA_GRAPH_MODEL_EXTENSION_NAME = "VK_QCOM_data_graph_model" Source #

data PhysicalDeviceDataGraphOperationSupportARM Source #

VkPhysicalDeviceDataGraphOperationSupportARM - Structure describing an operation or set of operations supported by a data graph processing engine

See Also

VK_ARM_data_graph, DataGraphPipelineBuiltinModelCreateInfoQCOM, PhysicalDeviceDataGraphOperationTypeARM, QueueFamilyDataGraphPropertiesARM

Constructors

PhysicalDeviceDataGraphOperationSupportARM 

Fields

Instances

Instances details
Storable PhysicalDeviceDataGraphOperationSupportARM Source # 
Instance details

Defined in Vulkan.Extensions.VK_ARM_data_graph

Show PhysicalDeviceDataGraphOperationSupportARM Source # 
Instance details

Defined in Vulkan.Extensions.VK_ARM_data_graph

FromCStruct PhysicalDeviceDataGraphOperationSupportARM Source # 
Instance details

Defined in Vulkan.Extensions.VK_ARM_data_graph

ToCStruct PhysicalDeviceDataGraphOperationSupportARM Source # 
Instance details

Defined in Vulkan.Extensions.VK_ARM_data_graph

Zero PhysicalDeviceDataGraphOperationSupportARM Source # 
Instance details

Defined in Vulkan.Extensions.VK_ARM_data_graph

newtype PhysicalDeviceDataGraphProcessingEngineTypeARM Source #

VkPhysicalDeviceDataGraphProcessingEngineTypeARM - Enumeration describing data graph processing engines

Description

See Also

VK_ARM_data_graph, PhysicalDeviceDataGraphProcessingEngineARM, PhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM

Instances

Instances details
Eq PhysicalDeviceDataGraphProcessingEngineTypeARM Source # 
Instance details

Defined in Vulkan.Extensions.VK_ARM_data_graph

Ord PhysicalDeviceDataGraphProcessingEngineTypeARM Source # 
Instance details

Defined in Vulkan.Extensions.VK_ARM_data_graph

Storable PhysicalDeviceDataGraphProcessingEngineTypeARM Source # 
Instance details

Defined in Vulkan.Extensions.VK_ARM_data_graph

Read PhysicalDeviceDataGraphProcessingEngineTypeARM Source # 
Instance details

Defined in Vulkan.Extensions.VK_ARM_data_graph

Show PhysicalDeviceDataGraphProcessingEngineTypeARM Source # 
Instance details

Defined in Vulkan.Extensions.VK_ARM_data_graph

Zero PhysicalDeviceDataGraphProcessingEngineTypeARM Source # 
Instance details

Defined in Vulkan.Extensions.VK_ARM_data_graph

newtype PhysicalDeviceDataGraphOperationTypeARM Source #

VkPhysicalDeviceDataGraphOperationTypeARM - Enumeration describing data graph operations

Description

See Also

VK_ARM_data_graph, PhysicalDeviceDataGraphOperationSupportARM

Instances

Instances details
Eq PhysicalDeviceDataGraphOperationTypeARM Source # 
Instance details

Defined in Vulkan.Extensions.VK_ARM_data_graph

Ord PhysicalDeviceDataGraphOperationTypeARM Source # 
Instance details

Defined in Vulkan.Extensions.VK_ARM_data_graph

Storable PhysicalDeviceDataGraphOperationTypeARM Source # 
Instance details

Defined in Vulkan.Extensions.VK_ARM_data_graph

Read PhysicalDeviceDataGraphOperationTypeARM Source # 
Instance details

Defined in Vulkan.Extensions.VK_ARM_data_graph

Show PhysicalDeviceDataGraphOperationTypeARM Source # 
Instance details

Defined in Vulkan.Extensions.VK_ARM_data_graph

Zero PhysicalDeviceDataGraphOperationTypeARM Source # 
Instance details

Defined in Vulkan.Extensions.VK_ARM_data_graph

pattern MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM :: Integral a => a Source #

VK_MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM - Length of a data graph operation name string

See Also

VK_ARM_data_graph

pattern DATA_GRAPH_MODEL_TOOLCHAIN_VERSION_LENGTH_QCOM :: Integral a => a Source #

VK_DATA_GRAPH_MODEL_TOOLCHAIN_VERSION_LENGTH_QCOM - Length of a data graph toolchain version string

See Also

VK_QCOM_data_graph_model