Microsoft's Shader Model 6.10 and AgilitySDK 1.720 are now available in preview, expanding the DX12 API with brand new features.
Microsoft DX12 Linear Algebra "Matrix" APIs, Group Wave Index, Raytracing Intrinsics, More With Shader Model 6.10 & AgilitySDK 720 Preview Release
Today's launch expands on the previous release of Shader Model 6.9, DXR 1.2, and other enhancements, which were part of the AgilitySDK 1.619. With the release of the AgilitySDK 1.720 preview, Shader Model 6.10 and several other features listed below are being added to the DX12 API:
- Shader Model 6.10 (via DXC 1.10.2605.2):
- linalg::Matrix
- Group Wave Index
- Variable Group Shared Memory
- Raytracing intrinsics
- TriangleObjectPositions
- ClusterID
inalg::Matrix
Shader Model 6.10 introduces a set of Matrix APIs covering a broad swath of use cases. Collectively, the feature is called LinAlg (short for Linear Algebra). With today’s announcement, Microsoft is enabling developers to both efficiently drive neural rendering techniques directly from individual shader threads in real-time graphics pipelines and utilize higher bandwidth matrix MMA operations for ML and image processing applications, all in a singular combined API.
Group Wave Index
Shader Model 6.10 introduces two new intrinsics, GetGroupWaveIndex() and GetGroupWaveCount(), that give compute, mesh, amplification, and node shaders direct knowledge of wave-level structure within a thread group. GetGroupWaveIndex() returns the current wave’s index (0 to N-1), and GetGroupWaveCount() returns the total number of waves executing the group. These enable wave-level work specialization and cooperation without relying on unsafe workarounds like dividing SV_GroupIndex by WaveGetLaneCount(), which is not guaranteed to be correct across all hardware. A single code path now works portably across all wave sizes.
Variable Group Shared Memory
Shader Model 6.10 lifts the longstanding 32 KB (28 KB for mesh shaders) cap on groupshared memory by exposing the actual hardware limit through a new runtime query, MaxGroupSharedMemoryPerGroup. Shader authors can use a new [GroupSharedLimit(<bytes>)] entry-point attribute to declare the maximum shared memory their shader requires, giving the compiler a compile-time portability check while still allowing access to the full capacity of modern GPUs. Shaders that omit the attribute continue to be validated against the legacy limits, so existing code is unaffected. This unlocks algorithms like large tile culling, software rasterization bins, and big matrix workloads that were previously constrained by the spec rather than the hardware.
D3D12 Features:
Batched Asynchronous Command List APIs
D3D12’s legacy CopyBufferRegion, ClearUnorderedAccessViewFloat/Uint, ResolveSubresource, and similar commands all execute strictly in series because the old ResourceBarrier The model has no way to express a dependency between two operations of the same type (e.g., copy-dest to copy-dest). This means the GPU stalls between every sequential copy or clear, even when the operations touch completely independent memory. The Batched Async Commands feature addresses this by introducing new command list methods that remove the implicit serialization contract, allowing the driver and hardware to overlap independent work within a single batch call. Developers opt into explicit synchronization using enhanced barriers only where true data hazards exist – such as when two copies write to overlapping regions of the same buffer – and everything else runs concurrently.
All major hardware vendors, including NVIDIA, AMD, and Intel, are offering support for these new preview releases:
| IHV | Driver Link(s) |
| AMD | AMD Software: AgilitySDK Developer Preview Edition 25.30.41.02 |
| Intel | Intel Arc Graphics – Windows |
| NVIDIA | Contact your developer relations representative for in-development driver access. |
In terms of hardware support, NVIDIA supports most of the features across its entire RTX GPU stack while AMD and Intel keep the support for certain features on their latest hardware, such as Arc B-Series and RDNA 4 (Radeon RX 9000). Group Wave Index is currently supported on both RX 7000 (RDNA 3) and RX 9000 (RDNA 4) GPUs, whereas for NVIDIA, it is planned to launch in an upcoming release. Intel will also have the new Linear Algebra API support added in a future release.
| AMD | Intel | NVIDIA | |
| linAlg::Matrix | Supported on AMD Radeon RX 9000 series graphics products. | Planned for an upcoming release. | Supported on all RTX hardware. |
| Group Wave Index | Supported on AMD Radeon RX 7000 and 9000 series graphics products. | Supported on Intel Arc B-Series Graphics. | Planned for an upcoming release. |
| Variable Group Shared Memory | Supported on AMD Radeon RX 7000 and 9000 series graphics products. Supports default memory limit size only. Higher size limits are planned for future driver releases. | Supported on Intel Arc B-Series Graphics. | Supported on all RTX hardware. Values differ across hardware. |
| Raytracing intrinsics: TriangleObjectPositions/ClusterID | Supported on AMD Radeon RX 7000 and 9000 series graphics products. | Supported on Intel Arc B-Series Graphics. | Supported on all RTX hardware. |
| Batched Asynchronous Command List APIs | Supported on AMD Radeon RX 7000 and 9000 series graphics products. | Supported on Intel Arc B-Series Graphics. | Supported on all RTX hardware. |
Follow Wccftech on Google to get more of our news coverage in your feeds.

