Registered Extension Number

250

Revision

1

Ratification Status

Not ratified

Extension and Version Dependencies

SPIR-V Dependencies

Contact

Other Extension Metadata

Last Modified Date

2019-02-05

Interactions and External Dependencies
Contributors
  • Jeff Bolz, NVIDIA

  • Markus Tavenrath, NVIDIA

  • Daniel Koch, NVIDIA

Description

This extension adds support for using cooperative matrix types in SPIR-V. Cooperative matrix types are medium-sized matrices that are primarily supported in compute shaders, where the storage for the matrix is spread across all invocations in some scope (usually a subgroup) and those invocations cooperate to efficiently perform matrix multiplies.

Cooperative matrix types are defined by the SPV_NV_cooperative_matrix SPIR-V extension and can be used with the GL_NV_cooperative_matrix GLSL extension.

This extension includes support for enumerating the matrix types and dimensions that are supported by the implementation.

New Commands

New Structures

New Enums

New Enum Constants

New SPIR-V Capabilities

Issues

(1) What matrix properties will be supported in practice?

RESOLVED: In NVIDIA’s initial implementation, we will support:

  • AType = BType = fp16 CType = DType = fp16 MxNxK = 16x8x16 scope = Subgroup

  • AType = BType = fp16 CType = DType = fp16 MxNxK = 16x8x8 scope = Subgroup

  • AType = BType = fp16 CType = DType = fp32 MxNxK = 16x8x16 scope = Subgroup

  • AType = BType = fp16 CType = DType = fp32 MxNxK = 16x8x8 scope = Subgroup

Version History

  • Revision 1, 2019-02-05 (Jeff Bolz)

    • Internal revisions

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.

Copyright 2014-2026 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0