Well well well, this is going to be a very interesting article. The delightfully controversial SemiAccurate.com has just revealed that DirectX12 is nothing more than DirectX11 with Mantle API shamelessly integrated. This raises a couple of important points to discuss, including but not limited to, its impact on the flailing Xbox One (Its performance boost on the PC platform is obvious).
DirectX 12 is a Mantle Integrated DirectX 11 – Questionable Performance Boost for Xbox One, If Any
Now Mantle has been raising many an eye with its blindingly obvious advantages, advantages that only a Low Level API can provide. The DriectX API has been mostly stagnant for the past couple of years but now, forced by Mantle, they have swung into action, ushering in a new “DirectX 12”. Now DirectX 12 has not been revealed to the mainstream yet but sources have already revealed what it is all about.
DirectX 12 arrived very suddenly, and it can be safely concluded that it was rushed because of the PR Damage Mantle caused. It was clear that unless the next installment of Microsoft’s API gave the users a Mantle-like performance boost (i.e. a low level advantage) it would not fare well. And it seems that this is exactly what Microsoft has done. All the features provided by Mantle will be available in DirectX 12 (to a suspiciously identical extent). Now the advantage of DirectX 12 on PC will be beautiful. We have already seen Mantle benchmarks for Battlefield 4 and for Thief and they do not disappoint (especially Thief). However just what exactly, would this entail for the Xbox One?
For those of you interested, I will detail the difference between a high level and a low level program, if you already know, you are welcome to skip this para. Unlike what common sense might dictate, the highest level of control is called the low level access and is mostly consistent of 1s and 0s. The lowest olevel of control is called the “High Level Access” and consists of programs having Drivers and other intermediaries in between. Now basically a programmer has choice between two or three types of Assemblers. The first is a High Level Assembler which can have english based syntax and basic commands, however commands are not executed in real time. Naturally, best thing to program in would be the utter low level (1s and 0s) but that would be insanely difficult, not to mention tiresome. So coders compromise by usually going with a Low Level Assembler which is an intermediary of both. When we say that Mantle is a Low Level API, it means that it can bypass the bottlenecks imposed by the OS and the Drivers Layer, directly access and utilize the GPU.
Now the problem with Xbox One is, it already has decent Low Level access since it is a console and uses a RTOS (Real Time Operationg System). Theory would dictate that the advantage of a Low Level API on such hardware would result in negligible performance increase. And as it looks like Direct X 12 has no other major features, I do not see Xbox gaining a performance boost with DirectX 12. However, do note this. IF the current API of Xbox One is buggy/glitchy/inefficient, then DX12 could give Xbox One a major performance boost. But realize we are going with the assumption that the drivers are inefficient (for what they were programmed to do) to begin with. End of the stick: PC Users Rejoice! Xb One Users, wait till you see some actual improvements.
— Usman Pirzada (@usmanpirzada) March 19, 2014