KhronosGroup / Vulkan-Docs

The Vulkan API Specification and related tools
Other
2.71k stars 453 forks source link

Task list for VK_NV_cooperative_matrix release #923

Closed jeffbolznv closed 5 years ago

jeffbolznv commented 5 years ago

The Vulkan 1.1.101 spec release includes the VK_NV_cooperative_matrix extension. 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. These operations are accelerated by NVIDIA Tensor Cores on Turing GPUs.

The task list for the VK_NV_cooperative_matrix extension release is:

As each component is made public, the task will be checked off. When all tasks have been completed this issue will be closed and the extension will be fully released.

pdaniell-nv commented 5 years ago

Driver versions 419.09 (Windows) and 418.31.03 (Linux) implement this extension and can be found here: https://developer.nvidia.com/vulkan-driver.

oscarbg commented 5 years ago

@pdaniell-nv can't see this interesting extension (VK_NV_cooperative_matrix) exposed on Titan V (Volta) on 419.09.. https://vulkan.gpuinfo.org/compare.php?compare=compare&id%5B5264%5D=on&id%5B4960%5D=on is that expected? it's because Volta Tensor cores aren't "rich enough" to support it? thanks..

jeffbolznv commented 5 years ago

Right, this is only currently supported on Turing.

minisparrow commented 6 months ago

could the warpgroup mma(H100 WGMMA) using this extension?