With any update to Windows comes an update to the venerable DirectX API that provides the bridge between the GPU and the operating system to make things happen behind the scenes. Microsoft works closely with developers and GPU makers to ensure that everything on the market is ready for the launch day of the new version of Windows, and with it the new version of DirectX.
Such is AMD’s narrative when it comes to the launch of Windows 8 and DirectX 11.1: the company worked closely with Microsoft in the months prior to launch to ensure that its GCN architecture would support DirectX 11.1 in its entirety. The same can’t be said about the competition, NVIDIA, as claimed in a recent AMD blog post.
AMD’s David Nalasco, a technology manager in its graphics group, blogs that while NVIDIA claims to offer full support of DirectX 11.1 that “full” support is only limited to one feature level and less than half of the other. As Mr. Nalasco explains, a “feature level” is a subset of the DirectX API that determines what the system’s GPU can support — this allows some backwards compatibility to bring at least part of the DirectX 11.1 experience to a wide range of GPUs.
“So, what exactly happened? Why did Nvidia initially claim DirectX 11.1 support (see news release here) when they clearly did not support 4 of the 10 key technologies comprising Feature Level 11_1?” Mr. Nalasco writes. “While every new version of DirectX adds support for new features, it also has to maintain support for older, less capable hardware.”
“As an example of how feature levels can add confusion, DirectX 11.1 comprises Feature Level 11_0 and Feature Level 11_1. This means that even though a GPU claims to support DirectX 11.1, it may in fact only support Feature Level 11_0, or, as in the case of Nvidia’s Kepler GPUs, only partially support Feature Level 11_1,” he continued.
According to the MSDN dev centre library, and previous statements NVIDIA has made to the press, the technologies available in Feature Level 11_1 that Kepler does not support, but GCN does, are as follows: 2D target-independent rasterization, 2D 16xMSAA rasterization, orthogonal line rendering mode, and UAV in non-pixel-shader stages.
Mr. Nalasco’s post highlights some of the benefits AMD claims will emerge from the features:
- Target Independent Rasterization: accelerates rendering of 2D vector graphics (used by the Windows Modern UI, HTML5 web pages, and .SVG image files) by up to 500% or more (link from Microsoft here):
- UAV improvements: allow DirectCompute shaders to share data with any stage of the Direct3D rendering pipeline, enabling new hybrid graphics techniques that seamlessly combine GPU compute with traditional 3D rendering
- Sum of Absolute Differences: exposes new shader instructions on the GPU that can massively accelerate a wide range of image processing tasks, including video image stabilization, photo/video search, and gesture or face recognition
NVIDIA doesn’t deny that full support for Feature Level 11_1 is missing from its Kepler architecture, however the company calls to question the usefulness of the features GCN supports but Kepler doesn’t.
“Kepler supports the 11.1 features that are useful for gaming,” said NVIDIA’s Bryan Del Rizzo, a senior PR manager at the company, to Hardware Canucks.
“We do support 11.1 features with 11_0 feature level through the DirectX 11.1 API. We do not support feature level 11_1. This is a bit confusing, due to Microsoft naming. We do support 11.1 from a feature level for gaming related features,” NVIDIA technical manager Lars Weinand has been quoted in the press as saying.
Requests for clarification from AMD were not immediately responded to.
A developer at a AAA studio, who spoke to Bright Side of News on the condition of anonymity, says the majority of features in Feature Level 11_1 not supported by hardware can be emulated at the software level.
“DirectX 11.1 is an incremental upgrade, and we support all the capabilities we need, regardless of dx11_0 or dx11_1 hardware. Remember DirectX 10 and different versions? They were also covered via software features. 90% of differences between 11.0 and 11.1 are software anyways,” the source said.