VkPhysicalDeviceCooperativeVectorPropertiesNV(3)

# VkPhysicalDeviceCooperativeVectorPropertiesNV(3) Manual Page

## Name

VkPhysicalDeviceCooperativeVectorPropertiesNV - Structure describing cooperative vector properties supported by an implementation

## C Specification

The `VkPhysicalDeviceCooperativeVectorPropertiesNV` structure is defined as:

    // Provided by VK_NV_cooperative_vector
    typedef struct VkPhysicalDeviceCooperativeVectorPropertiesNV {
        VkStructureType       sType;
        void*                 pNext;
        VkShaderStageFlags    cooperativeVectorSupportedStages;
        VkBool32              cooperativeVectorTrainingFloat16Accumulation;
        VkBool32              cooperativeVectorTrainingFloat32Accumulation;
        uint32_t              maxCooperativeVectorComponents;
    } VkPhysicalDeviceCooperativeVectorPropertiesNV;

## Members

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

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

- `cooperativeVectorSupportedStages` is a bitfield of VkShaderStageFlagBits describing the shader stages that cooperative vector instructions are supported in. `cooperativeVectorSupportedStages` will have the VK_SHADER_STAGE_COMPUTE_BIT bit set if any of the physical device’s queues support VK_QUEUE_COMPUTE_BIT.

- `cooperativeVectorTrainingFloat16Accumulation` is VK_TRUE if the implementation supports cooperative vector training functions accumulating 16-bit floating-point results.

- `cooperativeVectorTrainingFloat32Accumulation` is VK_TRUE if the implementation supports cooperative vector training functions accumulating 32-bit floating-point results.

- `maxCooperativeVectorComponents` indicates the maximum number of components that can be in a cooperative vector.

## Description

If the `VkPhysicalDeviceCooperativeVectorPropertiesNV` structure is included in the `pNext` chain of the VkPhysicalDeviceProperties2 structure passed to vkGetPhysicalDeviceProperties2, it is filled in with each corresponding implementation-dependent property.

Valid Usage (Implicit)

- VUID-VkPhysicalDeviceCooperativeVectorPropertiesNV-sType-sType
  `sType` must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_VECTOR_PROPERTIES_NV

Structure Chaining

Extends the structure

  - VkPhysicalDeviceProperties2

## See Also

VK_NV_cooperative_vector, VkBool32, VkShaderStageFlags, 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-2026 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0