1// Copyright (c) 2021-2023 The Khronos Group, Inc. 2// 3// SPDX-License-Identifier: CC-BY-4.0 4 5include::{generated}/meta/{refprefix}VK_KHR_cooperative_matrix.adoc[] 6 7=== Other Extension Metadata 8 9*Last Modified Date*:: 10 2023-05-03 11*Interactions and External Dependencies*:: 12 - This extension requires 13 {spirv}/KHR/SPV_KHR_cooperative_matrix.html[`SPV_KHR_cooperative_matrix`] 14 - This extension provides API support for 15 {GLSLregistry}/khr/GLSL_KHR_cooperative_matrix.txt[`GLSL_KHR_cooperative_matrix`] 16*Contributors*:: 17 - Jeff Bolz, NVIDIA 18 - Markus Tavenrath, NVIDIA 19 - Daniel Koch, NVIDIA 20 - Kevin Petit, Arm Ltd. 21 - Boris Zanin, AMD 22 23=== Description 24 25This extension adds support for using cooperative matrix types in SPIR-V. 26Cooperative matrix types are medium-sized matrices that are primarily 27supported in compute shaders, where the storage for the matrix is spread 28across all invocations in some scope (usually a subgroup) and those 29invocations cooperate to efficiently perform matrix multiplies. 30 31Cooperative matrix types are defined by the 32{spirv}/KHR/SPV_KHR_cooperative_matrix.html[`SPV_KHR_cooperative_matrix`] 33SPIR-V extension and can be used with the 34{GLSLregistry}/khr/GLSL_KHR_cooperative_matrix.txt[`GLSL_KHR_cooperative_matrix`] 35GLSL extension. 36 37This extension includes support for enumerating the matrix types and 38dimensions that are supported by the implementation. 39 40include::{generated}/interfaces/VK_KHR_cooperative_matrix.adoc[] 41 42=== New SPIR-V Capabilities 43 44 * <<spirvenv-capabilities-table-CooperativeMatrixKHR,CooperativeMatrixKHR>> 45 46=== Issues 47 48=== Version History 49 50 * Revision 2, 2023-05-03 (Kevin Petit) 51 ** First KHR revision 52 * Revision 1, 2019-02-05 (Jeff Bolz) 53 ** NVIDIA vendor extension 54