Microsoft has launched the demo versions of Shader Model 6.10 and AgilitySDK 1.720, introducing new features for the DX12 API.
These updates are backed by NVIDIA, AMD, and Intel. NVIDIA supports most of the features across all RTX graphics cards, while AMD and Intel ensure feature compatibility primarily with their latest models, such as the Arc B-Series and Radeon RX 9000.
The Group Wave Index is now compatible with RX 7000 graphics cards built on RDNA 3 architecture and the RX 9000 series with RDNA 4. NVIDIA and Intel are planning to incorporate support for the LinAlg API in their upcoming releases.
Previously, Microsoft announced the arrival of DirectStorage 1.4. It’s intriguing to imagine how games might have evolved if Microsoft hadn’t introduced DirectX 8 back on November 9, 2000.
This release enhances the capabilities seen in Shader Model 6.9, DXR 1.2, and the improvements from AgilitySDK 1.619. Shader Model 6.10 presents a set of APIs designed for matrix operations across a wide range of applications. Known as LinAlg, short for Linear Algebra, it empowers developers to manage neural rendering tools directly from individual shader threads within graphics pipelines in real-time. This functionality facilitates faster matrix computations like MMA for machine learning applications and image processing.
As you explore this site, you agree to all the policies of itc.ua.
Two new built-in functions, GetGroupWaveIndex and GetGroupWaveCount, provide computational, mesh, amplification, and node shaders with wave-level structure information within a thread group. GetGroupWaveIndex returns the current wave’s index (ranging from 0 to N-1), while GetGroupWaveCount delivers the total number of waves executing in the group. This coordination eliminates the need for unsafe workarounds, such as dividing SV_GroupIndex by WaveGetLaneCount, which fails to guarantee proper functionality. A unified code path is now accessible for all wave sizes.
Shader Model 6.10 removes the 32KB limit on shared memory for groups, unveiling software constraints during MaxGroupSharedMemoryPerGroup execution. Shader developers can utilize the new entry point attribute [GroupSharedLimit()] to set the maximum group memory required by the shader. This allows the compiler to verify throughput during compilation, harnessing the full potential of modern GPUs.
Shaders not using this attribute are checked against old constraints, ensuring existing code remains unchanged. This update unlocks the potential for sampling large fragments, software rasterization, and processing extensive matrices previously restricted by specification rather than hardware capability.
Legacy commands like ClearUnorderedAccessViewFloat/Uint, ResolveSubresource, and CopyBufferRegion execute sequentially since the old ResourceBarrier model fails to express dependencies between operations of the same type (e.g., copying memory regions). This issue caused GPU stalls between consecutive copy or clear operations, even when performed with completely independent memory.
The Batched Async Commands feature addresses this problem with new command list methods that remove implicit serialization contracts, enabling drivers and hardware to operate independently within a single batch request. Developers can employ explicit synchronization through advanced barriers only when actual data conflicts arise — for instance, when two copies write data into overlapping buffer regions.
NVIDIA has released SDK DLSS 4.5: what new developments can we expect in gaming?
What are your thoughts on this article? Votes: It’s great! Well, okay! Damn! Oh, come on… It’s annoying!