Microsoft is preparing DirectX 12

It is not a secret, that Microsoft is feel being threaten by Mantle AMD graphic API, so they are fast on announcing new version of their popupar API, that should address many of the multicore shortcommings of DirectX. ATM there is no information about if there will be support for new GFX functions and such, mostly because M$ is not yet really put upfront what the the DX 12 plan at all. Yet so far, they come up with this effectiveity comparsion of using four cores on DirectX 12 as oposed to DirectX 11, demonstrated on 3D Mark:

Reducting the overhead looks much like Mantle was actually done. So we might hope for some good competition, that should, in the end, benefit for the users of mainly slower machines, that benefited most from Mantle lowering the CPU overhead, while hi-end systems getting only minimal gains.

There is no DX 12 specs, there is no DX 12 release date, but it is widely presumed, that it should be there at around fall 2015 / beginning of 2016.

More than likely DX12 is going to roll out with Windows 2015 or whatever the hell they are calling it right now.

That is quite possible. However since Mantle is not that limiting as DX is (I mean that DirectX support for older Windows is quite limiting and the older the Win is, the less features it offer, witch is desperate move that should persuade people to update their Windows, but it can backfire…), then it is possible that DX 12 will be for much wider range of Windows.

On the contrary, if M$ feels to be once again "all powerfull", then it might be "Windows 2015" only, or some similar BS.

On the other hand, since Linux is gaining steam with the Stream support from Valve and others, then I dubt that M$ dare to go with this move. The tide is already there:

Valve Open-Sources Their Direct3D To OpenGL Translation Layer

CRYENGINE adds Linux Support as Crytek Prepare to Offer New Possibilities at GDC

Epic give out the Unreal 4 engine for $19 and that support Oculus VR, Linux, Valve’s Steamworks and Steam Box:

…and it will be foolish to ignore it. When I showed uBuntu running just from the CD (eg. slow) to some people, that have the computer just for the emails and net, then it immediatelly gained some attention. And I just used the Linux to delete some files on NTFS drive, that even after clean Winblows reinstall cannot be deleted (renaming did not work, so...).
So people are catching on. Also it is good that it is legal. We are here (Czech republic) in somewhat different teritory when come to originality or legality of Windows. Original Windows are VERY rare (I had my original Win2k that come with the Dell OptiPlex GX110, but the CD is nowhere to be found now, witch basicaly mean that the legitimity is problematic at best) there, so a Linux that did not catch viruses and cause problems have some attention.
And unless people are really dependent on some Win programs that have no counterparts in Linux (hard to find such, but it is possible), then this looks as viable option anyway. But that is OT.
Direct X is never going to be for Linux  ;D

First "tease" of the DX 12 should bring is, by Microsoft - a new blend modes and conservative rasterization, which is not supported by all todays GFX cards by hardware. There is plenty of blending/mixing modes already, so the major change could be the hardware-accelerated object culling and hit detection.
However it is only a tease of what should come, as they say. This does not make much sense, because they also say, that at start, the new DX 12 was aimed for Xbox One. Now they talking about 4 years of coop with nVidia on DX 12. And that also did not make slight sense to me, since AMD made Mantle in about 2 years with quite limited resources. So a gigants, like Microsoft and nVidia need 6 years to come up with another revision of DX?

Since when DX took that long? Remember the turn-around times for DX 11, DX 11.1 and DX 11.2…?

All in all it looks like to me, that w/o Mantle, they will never get into it at all. And even when Mantle is there, they still taking their time... I bet that since the Mantle give a nice speed-up for lower end hardware, then they will be pushed to accelerate the development somehow. 2 years in computers are pretty long time... in fact, there might not even be the market, they are aiming for, after 2 years of waiting.

In case anyone did not noticed, then the main speed-up in DX 12 slide is, that in the DX 12 case, there is missing the KM mode driver - eg. the Windows Display Driver Model (WDDM). That come up with Vista, restricting some possibilities that WinXP do just well. As such, it was hated and therefore since WDDM 1.0 in Vista we get envolved a bit. Windows 7 have WDDM v1.1 with some functionality restored and Windows 8 and 8.1 come with version 1.2.

Now every these versions does REQUIRE the Kernel mode driver, as we know it. Therefore there is no way the nicely looking graph can run on Windows 8.1, as it will require announced but never produced WDDM v2.0 and 2.1 as step, that is according to M$ targeted to "future windows."

M$ was talking about WDDM v2.0 on WinHEC 2006, but since then nothing was changed. Many expected new WDDM in Win 8/8.1, however nothing materialized. There are only slight evolutionary changes to v1.2, nothing that can allow direct access to the metal like Mantle do. Not to mention the overhead problem…

There is no way to bypass this using current WDDM v1.x ways.

However the graph (in first post) is not showing the KM-driver and DXGI (Microsoft DirectX Graphics Infrastructure). In Mantle, things go after the Application thru just the User-Mode Driver to hardware, eliminating the overhead of OS.

Even AMD and nVidia mentioned that DX 12 will require "new" driver model, however no-one is explicitly saying, that w/o WDDM v2.0 the DX 12 cannot run." But we can assume, based on the informations given, that this is the case.

From that perspective it looks like that for the Vista/Win7 is the DX 12 almost hopeless (while Mantle works just fine) and it is a good question, if M$ is willing to implement WDDM v2.0 into Win8/8.1 - that would require plenty of work for no gain. And mainly - since Win9 is planed at April/May 2015 (and come with WDDM v2.0 and Start button), then what is the better sale argument for new Win, that faster DX 12 with less overhead?

Many users hesitate to upgrade even todays from WinXP (for many is WinXP most their computer can handle anyway), so M$ is likely to go this way, witch would, in the end, play well into cards of AMD and Mantle.

Not very surprising move, but a good sign - AMD started from previous "wishes" mentioned in slides:

…into actuall talks with developers to get Mantle supported on Linux 🙂 Also on GDC AMD clearify, that after the release of DX12 is not going to abandon Mantle (that is IMHO kind of obvious, mainly because DX12 is M$ work and we don't know, how it will turn out to be) and mentioned there reasons for it:

  • Linux support
  • Mantle is more close to the metal and it is going to work more effectively that DX12
  • in Mantle, there is much faster support for new technologies

Put it simple, with new HW, there can be new Mantle release, however there is sometimes years between DX versions, and the DX12 is expected in roughly 2 years timeframe, witch is kinda slow, to be honest.

So I should mentioned that the Linux support is getting even better day by day. M$ should be affraid.