Microsoft has announced the preview release of Shader Model 6.10 and AgilitySDK 1.720, significantly expanding the capabilities of the DX12 API with new features aimed at developers.
Enhanced Features in Shader Model 6.10 & AgilitySDK 1.720
The latest introduction builds upon the previous Shader Model 6.9 and DXR 1.2 enhancements, both of which were included in the AgilitySDK version 1.619. The AgilitySDK 1.720 preview showcases several new features for enhancing the DX12 API, detailed as follows:
- Shader Model 6.10 (via DXC 1.10.2605.2):
- Linear Algebra APIs (linalg::Matrix)
- Group Wave Index
- Variable Group Shared Memory
- Raytracing intrinsics:
- TriangleObjectPositions
- ClusterID
Introducing Linear Algebra APIs (linalg::Matrix)
Shader Model 6.10 brings a comprehensive suite of Matrix APIs under the LinAlg umbrella. This integration enables developers to efficiently implement neural rendering techniques directly from shader threads, enhancing real-time graphics pipeline performance. Additionally, it supports high-bandwidth matrix matrix multiply (MMA) operations for machine learning and image processing applications, all within a single API framework.

Group Wave Index: Enhancing Shader Performance
New intrinsics, GetGroupWaveIndex() and GetGroupWaveCount(), have been added to Shader Model 6.10. These allow various types of shaders—compute, mesh, amplification, and node—to gain insights into wave-level structures within a thread group. The functionality provided by GetGroupWaveIndex() offers the current wave’s index, while GetGroupWaveCount() reveals the total number of executing waves in the group. This capability promotes work specialization and collaboration among waves without the need for unreliable workarounds, such as the outdated method of dividing SV_GroupIndex via WaveGetLaneCount(), which lacks universal hardware reliability.
Variable Group Shared Memory: New Possibilities
Another major upgrade in Shader Model 6.10 is the lifting of the prior 32 KB (28 KB for mesh shaders) limit on group shared memory. By exposing the actual hardware limit through a new runtime query, MaxGroupSharedMemoryPerGroup, shader authors can now utilize custom attributes to specify their shaders’ required memory sizes. This transition allows access to modern GPU capacities while ensuring existing code maintains compatibility with the legacy limits. Consequently, developers can now implement advanced algorithms, such as large tile culling and complex matrix workloads, unrestrained by the previous specifications.
Exploring D3D12 Features
Batched Asynchronous Command List APIs
The introduction of D3D12 Batch Commands addresses inherent serialization issues faced by earlier commands like CopyBufferRegion, ClearUnorderedAccessViewFloat/Uint, and ResolveSubresource, which executed in sequence. This limitation caused GPU stalls, delaying independent operations. The new Batched Asynchronous Command feature allows developers to utilize advanced command list methods that remove implicit serialization, allowing the hardware to overlap independent tasks. Developers now have the freedom to synchronize explicitly with enhanced barriers only when necessary, facilitating greater efficiency in concurrent workloads.
All leading hardware manufacturers, including NVIDIA, AMD, and Intel, are now supporting these preview releases:
| Hardware Vendor | Driver Links |
| AMD | AMD Software: AgilitySDK Developer Preview Edition 25.30.41.02 |
| Intel | Intel Arc Graphics – Windows |
| NVIDIA | For access to in-development drivers, please contact your developer relations representative. |
In terms of hardware support, NVIDIA covers a broad range of features across its entire RTX GPU lineup, whereas AMD and Intel restrict specific functionalities to their latest offerings, including the Arc B-Series and RDNA 4 (Radeon RX 9000).Specifically, Group Wave Index is supported by AMD’s RX 7000 and RX 9000 GPUs, while NVIDIA plans to implement it in an upcoming release. Future Intel updates will also include support for the new Linear Algebra API.
| AMD | Intel | NVIDIA | |
| linAlg::Matrix | Supported on AMD Radeon RX 9000 series products. | Planned for an upcoming release. | Supported across all RTX hardware. |
| Group Wave Index | Supported on AMD Radeon RX 7000 and 9000 series products. | Supported on Intel Arc B-Series Graphics. | Planned for an upcoming release. |
| Variable Group Shared Memory | Currently supports the default memory limit; higher limits are expected in future driver releases. | Supported on Intel Arc B-Series Graphics. | Supported across all RTX hardware, values vary by device. |
| Raytracing intrinsics: TriangleObjectPositions/ClusterID | Supported on AMD Radeon RX 7000 and 9000 series 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 products. | Supported on Intel Arc B-Series Graphics. | Supported on all RTX hardware. |
For additional information and visuals related to this announcement, check out the original source: Source & Images.
Leave a Reply