DirectX vs Mantle current and long term

Status
Not open for further replies.

Carfax83

Diamond Member
Nov 1, 2010
6,841
1,536
136
This thread's primary focus is on the current and prospective future evolution of DirectX and Mantle, and the pros and cons of both APIs in regards to PC gaming.

How will DirectX evolve, and will Mantle ever gain a strong foothold in the gaming industry?

DirectX has been a major part of PC gaming for nearly two decades now, and has gone through monumental changes. Without unifying principles of DirectX, it's difficult to imagine what PC gaming would be like today with all the various architecture specific APIs that were in circulation before DirectX. A lot of misinformed critics would portray DirectX as being long in the tooth and stagnant, but Microsoft has clearly shown a willingness to continue making major refinements and upgrades to the API at the cost of both compatibility and upgradeability..

For example, DX10 was a major break from DX9, in terms of programming model and overhead; so much so that it required a new driver model that could not be ported back to Windows XP.. And DX11 provided a solid solution for the inefficient draw call submission problem, by using driver command lists across multiple threads to record data, eventually sending the command lists to the GPU for processing..

However, DX11 multithreading relies primarily on the GPU drivers to work and as such, was a huge undertaking for IHVs to implement. It took NVidia roughly two years before they provided a solid driver that could give a significant performance increase in Civilization 5, the first native DX11 title.

This was before NVidia released their DCL enabled driver:



And this is with the DCL driver:



As you can see, that's a massive 62% performance increase NVidia achieved with their DCL driver. A total game changer by any estimate.

AMD on the other hand was never able to release a DCL enabled driver, but eventually was able to catch up to NVidia when Tahiti was released. However, this doesn't reduce the impact of DX11 multithreading, because DX11 multithreading only removes CPU bottlenecks. Civilization 5 can be GPU, or CPU bottlenecked depending on the settings.

Here's an example. At GPU limited settings, the 7970 is faster than the GTX 580:



At CPU limited settings however, the GTX 580 is faster than the 7970:



So DX11 multithreading works, and works well by all appearances at doing what it was designed to do; reduce or eliminate CPU bottlenecks.

Now fast forward to 2013. Throughout this time, AMD has never released a DCL enabled driver. Rumors were that they were never able to get any performance increases with it. It either resulted in no performance increase, or LESS performance.

Implementing DX11 multithreading was never on AMD's list of things to do though, because unbeknownst to most, they had been developing a new API for years. They named this API Mantle, and it was formally announced on September 26 2013. There were clues though.

In 2011, Richard Huddy gave an interview to tech website Bit Tech, and in it he reiterated over and over his desire to "get rid of DirectX" as it was holding back PC gaming.

He also perhaps unintentionally provided evidence of AMD's shortcomings concerning DX11 multithreading, by saying that DX11 multithreading only resulted in a two fold increase in draw call submission; something we know for a fact is not true based on NVidia's results.

And in early 2013, AMD's Roy Taylor stated that there won't be a DirectX 12.

Fast forward to 2014, Mantle is finally tested. Although performance varied across numerous reviews depending on hardware and software configuration, certain trends and consistencies were observed.

1) The largest performance increases were on low end CPUs, combined with high end GPUs, thus showing that Mantle's main performance benefit lay in reducing CPU bottlenecks.

2) Mantle provided significantly less performance benefits for high end setups, with the exception of Crossfire..

3) AMD's D3D driver was vastly inferior to NVidia's when it came to negating or reducing CPU overhead..





So now with all of this said, lets look at the pros and cons of both APIs. Feel free to add some if I've missed any:

DirectX Pros:

1) Backward compatible

2) Supports many architectures

3) Provides unified base for PC gaming

4) Strong support in the industry

5) Is always being updated and improved


DirectX Cons:

1) Relatively high CPU overhead due to necessary abstraction to work across multiple architectures and support backward compatibility.

2) Inefficient draw call submission method. DX11 multithreading dramatically improves this, but it's very difficult for IHVs to implement and only NVidia supports this feature. Game developers have also been reluctant to support DX11 multithreading in their engines as well due to very limited IHV support.

3) The full scope of the GPU is often underutilized due to abstractive layers.

Now for Mantle.

Mantle Pros:

1) Built from the ground up to be a thinner, more efficient rendering API with excellent multithreading support.

2) Less operating overhead than DirectX, and theoretically much higher draw call submission rate..

3) Gives greater access and control over hardware to developers.

4) Relatively easy to implement alongside DX11 due to shared features such as HLSL.

Mantle Cons:

1) Currently restricted to GCN based hardware. Supposedly this can change, but with no official specs published, no one can say for sure.

2) Is incompatible with previous DirectX versions.

3) Introduces API fragmentation back into the PC gaming industry.

4) Limited game developer support.

5) No IHV support outside of AMD.

Despite what some of you may think, I am not necessarily completely opposed to Mantle. Mantle definitely has some excellent, and useful virtues. The more I think of it, the more I've come to suspect that AMD's goal with Mantle was never to supplant DirectX, but to eventually incorporate it into DirectX with Microsoft's blessing..

AMD has undoubtedly been having difficulty with DirectX and multicore support, whereas NVidia has been much more successful in that regard.

If the status quo were to continue (assuming there was no Mantle), AMD would eventually find itself in trouble as more and more game engines become multithreaded and reliant on the CPU for performance due to AMD's drivers not scaling particularly well past two cores, not supporting DX11 multithreading, and the frenetic pace of GPU evolution compared to CPU..

I think Mantle was designed to prevent that future catastrophe. By bringing the issue of draw call submission and CPU overhead front and center, AMD is forcing Microsoft to fully address these issues...at least as they see them. I don't think NVidia has an issue with DirectX's method of multithreading, as NVidia has gotten very large increases from it.

It's difficult to compare Mantle with DX11 multithreading though, as Mantle does significantly more than just reducing CPU bottlenecks. Whilst most of the performance increase gained by using Mantle comes from reductions in CPU overhead, some of it I think also comes from exposing more of the GPU's capabilities.

It will be really interesting to see whether Microsoft introduces a new DirectX with Windows 9, and whether they will keep the current multithreading model which puts the burden on the GPU driver, or go the Mantle route by putting the burden on the API itself.
 

TreVader

Platinum Member
Oct 28, 2013
2,057
2
0
So you want your own special thread to bitch about mantle in? You don't even use mantle. If you don't plan on buying GCN hardware, why do you even care? I assure you, nobody is gonna come into your house and take your Geforce cards, and replace them with those awful AMD things.

Thread crapping and trolling is not allowed. -Shmee
 
Last edited by a moderator:

Genx87

Lifer
Apr 8, 2002
41,095
513
126
I think AMDs plan for mantle is to get their CPUs more competitive with Intel offerings. I thought it was about the GPU side of things. But looking at what benefits the most. It appears that AMD CPU's see a massive boost in performance. Look at that A10 going from 69 to 110 fps with mantle.
 

VulgarDisplay

Diamond Member
Apr 3, 2009
6,193
2
76
I still completely disagree about mantle in regards to backwards compatibility. You make it sound like if you turn on mantle your GPU instantly stops working with direct x which is not the case.

There is zero need for mantle to go back in time to support games that amd already run fine with DX. What you are saying when you say mantle needs to be backwards compatible is like saying that Microsoft needs to turn 20 years of PC games into dx11.2 compliant titles or the whole api is a failure.

This argument makes no sense. Dx8 titles can't run dx11 features so DX isn't backwards compatible either. All that matters is that amd hardware maintains direct x support for legacy titles and mantle maintains forward compatibility with all new hardware amd creates.

It honestly blows my mind how anyone thinks mantle needs to be backwards compatible when direct x isn't backwards compatible itself. The hardware is from amd or nvidia maintains the backwards compatibility across direct x versions not the api itself.
 

Termie

Diamond Member
Aug 17, 2005
7,949
48
91
www.techbuyersguru.com
Very well-informed and interesting post, OP. Apart from the subtle anti-AMD slant that some may take issue with, I think the goal of questioning the precedent set by Mantle is an important one. Is it really sustainable? Will it perhaps inspire refinements in DirectX and then be retired?

While it seems that one of the primary benefits of Mantle is to give a boost to AMD's weak lineup of CPUs, I doubt very highly that this was the reason that AMD developed Mantle. There are obviously some inefficiencies in DX11, and AMD saw a way to address them. As good as Nvidia's implementation of DCL is, the Civ5 example is probably more of the exception than the rule.

With more and more modern games requiring significant CPU power, and many becoming bottlenecked at 1080p, I think it's certainly right to question whether DirectX gaming is eventually going to be weighed down by the overhead even on the most powerful CPUs. We all know that CPUs aren't advancing as quickly as they used to, so this really is more than just an academic issue. When my overclocked 3770K and 4770K processors need to run at 75% capacity in BF4 just to keep up with a 1440p resolution, I do wonder what next year's game engines will require.
 

VulgarDisplay

Diamond Member
Apr 3, 2009
6,193
2
76
Another thing that hasn't been addressed that devs have talked about is how direct x limits their artistic vision. Sure direct x performs pretty darn good on hardware these days, but at what expense to the games themselves?

No one but the devs knows exactly what they are cutting out to get under an acceptable number of draw calls. The ones using mantle have all bit stated that direct x drastically changes their end products in the name of performance.
 
Mar 9, 2013
139
0
76
Very well-informed and interesting post, OP. Apart from the subtle anti-AMD slant that some may take issue with, I think the goal of questioning the precedent set by Mantle is an important one. Is it really sustainable? Will it perhaps inspire refinements in DirectX and then be retired?

While it seems that one of the primary benefits of Mantle is to give a boost to AMD's weak lineup of CPUs, I doubt very highly that this was the reason that AMD developed Mantle. There are obviously some inefficiencies in DX11, and AMD saw a way to address them. As good as Nvidia's implementation of DCL is, the Civ5 example is probably more of the exception than the rule.

With more and more modern games requiring significant CPU power, and many becoming bottlenecked at 1080p, I think it's certainly right to question whether DirectX gaming is eventually going to be weighed down by the overhead even on the most powerful CPUs. We all know that CPUs aren't advancing as quickly as they used to, so this really is more than just an academic issue. When my overclocked 3770K and 4770K processors need to run at 75% capacity in BF4 just to keep up with a 1440p resolution, I do wonder what next year's game engines will require.

The fact of the matter is that, I am amzed to see that a game like BF4 would stress those CPU s so hard. No matter what GPU or CPU you put in these games are still able to utilize the full length and breath of that configuration. The visual quality have improved a lot from dx9 to dx10. But, I can't say the same for the change from dx10 to dx11. They mostly were meant to improve performance.

Even then the titles that were exclusive to dx11 needed more power than dx10 or dx9 for some minimal gains in graphics and all.

It can be that the drivers were not fully developed. But, still it makes you question why would microsoft develop such a difficult model that was not easy for everone to implement?

The answer is obvious. They want continuous profit and dont want people to see how powerful there 5 yrs old configuration is. So, make those inefficient/difficult to implement codes. So, that you keep on buying new hardware.
 

Carfax83

Diamond Member
Nov 1, 2010
6,841
1,536
136
So you want your own special thread to bitch about mantle in? You don't even use mantle. If you don't plan on buying GCN hardware, why do you even care? I assure you, nobody is gonna come into your house and take your Geforce cards, and replace them with those awful AMD things.

If you don't have any relevant input and just want to troll, stay out of the thread. If this was P&N I would have a few choice words to say to you, but since it's not, I'll just have to settle for reporting your post..

In the future, please don't feed it and just report. You don't need to respond to the troll. -Shmee
 
Last edited by a moderator:

Carfax83

Diamond Member
Nov 1, 2010
6,841
1,536
136
I still completely disagree about mantle in regards to backwards compatibility. You make it sound like if you turn on mantle your GPU instantly stops working with direct x which is not the case.

Backward compatibility for Mantle isn't a serious concern I agree, but it's still a con.

The greatest concern is cross architectural compatibility.
 

Carfax83

Diamond Member
Nov 1, 2010
6,841
1,536
136
I think AMDs plan for mantle is to get their CPUs more competitive with Intel offerings. I thought it was about the GPU side of things. But looking at what benefits the most. It appears that AMD CPU's see a massive boost in performance. Look at that A10 going from 69 to 110 fps with mantle.

Yeah those low end CPUs get a massive boost from Mantle.. But, most gamers I'd wager have more powerful CPUs than the A10, and so wouldn't gain nearly as much as that. Also Intel CPUs gain quite a bit from Mantle as well.

One other thing to consider as well is that Mantle's performance boost is inflated due to AMD's poorer D3D performance. If NVidia were ever to adopt Mantle, they wouldn't gain as much as AMD as their D3D drivers have significantly less CPU overhead already.
 

OCGuy

Lifer
Jul 12, 2000
27,227
36
91
DX can run on anything, so it will always be put in the budget.

Mantle is about 1/3 of PCs and even less than that actually see any benefit from it. (100 FPS ---> 115 FPS is not a benefit).

Not hard to figure out which one will survive.
 

AnandThenMan

Diamond Member
Nov 11, 2004
3,949
504
126
Way too early to start making sweeping statements and judgements about Mantle. DX has been around for nearly 15 years, Mantle is just getting off the ground. It's amazing to see a brand new and rough around the edges API doing everything D3D can, and doing it better.
 

Carfax83

Diamond Member
Nov 1, 2010
6,841
1,536
136
Is it really sustainable? Will it perhaps inspire refinements in DirectX and then be retired?

Yeah, those are really the most important questions. It won't matter how good Mantle's technical virtues are, if it can't gain greater acceptance in the market.

And Microsoft isn't simply going to surrender their PC gaming monopoly.

As good as Nvidia's implementation of DCL is, the Civ5 example is probably more of the exception than the rule.
Civ 5 is the best example, because being a massive strategy game, it has high batch requirements and the engine also natively supports driver command lists. In this Firaxis Lore presentation, one of the developers stated he got 15,00 plus batches at 60 FPS, and they were GPU limited.

That was on hardware from nearly 5 years ago though. With today's hardware, they should be getting WAY more.

We all know that CPUs aren't advancing as quickly as they used to, so this really is more than just an academic issue. When my overclocked 3770K and 4770K processors need to run at 75% capacity in BF4 just to keep up with a 1440p resolution, I do wonder what next year's game engines will require.
DirectX already has a solution for CPU bottlenecks that works very well, but because of how difficult it was to implement, it wasn't widely adopted or used.

The only developers I'm aware of that have used DX11 multithreading are Firaxis, Ubisoft and Slightly Mad Studios.

And your CPU in BF4, is that in multiplayer? A lot of the CPU overhead in multiplayer isn't due to rendering, but to server and game related issues associated with online play.
 

Carfax83

Diamond Member
Nov 1, 2010
6,841
1,536
136
The fact of the matter is that, I am amzed to see that a game like BF4 would stress those CPU s so hard.

Much of the stress is related to playing online with multiple people. Mantle can't directly affect that, but by freeing up CPU cycles by making the rendering path have less CPU overhead, it can give you more headroom.

No matter what GPU or CPU you put in these games are still able to utilize the full length and breath of that configuration. The visual quality have improved a lot from dx9 to dx10. But, I can't say the same for the change from dx10 to dx11. They mostly were meant to improve performance.
I think you have it backwards. From DX9 to DX10 was all about increasing performance and efficiency and reducing overhead with stuff like compute shaders etcetera. From DX10 to DX11, there were quite a few IQ enhancing features such as tessellation, and better texture compression. The only brand new performance enhancing feature that I'm aware of in DX11 was DX11 multithreading. Actually, tessellation can also improve performance as well, but most developers seem to use it for IQ enhancement.

Even then the titles that were exclusive to dx11 needed more power than dx10 or dx9 for some minimal gains in graphics and all.
I think this was due mostly to developers having to learn a new API and programming model, plus most of the early DX11 games were hybrid.

Basically, all they did was use DX11 for IQ enhancement, but neglected the performance benefits like better multithreading, compute shaders etcetera..

When developers started making native DX11 games that were designed primarily (or only) for DX11 systems, that changed. Games like Civ 5, BF3, Crysis 3 etcetera exploited practically all performance features of DX11 enabling them to get much better looking and much better performing games than anything they could make with DX9.
 

jackstar7

Lifer
Jun 26, 2009
11,679
1,944
126
I'm waiting to see what Valve does before making prognostications. The market is going to be the driver and if Steam-boxes will see large gains from Mantle, then it creates incentive for Valve to consider Mantle if it will allow for cheaper options that can get into more homes. If Source 2.0 comes out and either does or doesn't support it, then that will likely point to its life or death. Alternately, if DICE keeps running with it and everyone and their little brother picks up Battlefront next year... then who knows. Either way, the games and other applications will reveal its benefits or failings best.
 

TreVader

Platinum Member
Oct 28, 2013
2,057
2
0
If you don't have any relevant input and just want to troll, stay out of the thread. If this was P&N I would have a few choice words to say to you, but since it's not, I'll just have to settle for reporting your post..

Edit: Apparently that thread was locked.




Carry on.
 
Last edited:

VulgarDisplay

Diamond Member
Apr 3, 2009
6,193
2
76
DX can run on anything, so it will always be put in the budget.

Mantle is about 1/3 of PCs and even less than that actually see any benefit from it. (100 FPS ---> 115 FPS is not a benefit).

Not hard to figure out which one will survive.

100fps to 115fps is one usage case.

For my purposes, low IQ in pursuit of high FPS, in my short testing I went from 74fps to my 120fps cap. That's a massive difference.
 

bystander36

Diamond Member
Apr 1, 2013
5,154
132
106
Another thing that hasn't been addressed that devs have talked about is how direct x limits their artistic vision. Sure direct x performs pretty darn good on hardware these days, but at what expense to the games themselves?

No one but the devs knows exactly what they are cutting out to get under an acceptable number of draw calls. The ones using mantle have all bit stated that direct x drastically changes their end products in the name of performance.
I think Mantle's advantage to get FPS to reach 120, or at least never drop below 60, is more likely going to be its major advantage.

Even if Mantle can help reach a dev's artistic vision, they still have to design the game around DirectX as long as that remains the majority market. And it always will unless Mantle starts being used by Nvidia and Intel.
 

lavaheadache

Diamond Member
Jan 28, 2005
6,893
14
81
100fps to 115fps is one usage case.

For my purposes, low IQ in pursuit of high FPS, in my short testing I went from 74fps to my 120fps cap. That's a massive difference.

did you try adjusting the contrast/other settings to see if you could match dx's image yet?
 

wand3r3r

Diamond Member
May 16, 2008
3,180
0
0
So let me get this straight before the "spin off" thread gets locked. (I wish we could have a directX vs. mantle discussion while keeping it objective.)

The mantle thread gets locked. The final controversy revolves around the same topic OP would like to continue to "discuss" (as one sided as a discussion can be) despite the thread getting locked. The only points are subjective with strong bias, without a spec of bjectivity.

Carfax83 said:
AMD takes 3 years to develop Mantle, makes a big hullaballoo about it, delays it 3 times, and when it's available it's buggy and only works on certain GCN cards..

Job well done!

--

AMD is too incompetent to pull it off though apparently, because they still haven't enabled it in their drivers after almost 5 years.

---

If I were NVidia's CEO, I wouldn't support Mantle. I would play to my strengths, and try to expose AMD's weaknesses with Direct3D..

A how many year old game vs. something new and that's the only thing being repeated time and time again since it shows favorite company A in a positive light.

Please stop feeding it. It's clear what's going on here.
 

AnandThenMan

Diamond Member
Nov 11, 2004
3,949
504
126
Judging by the extremely negative reactions and incessant FUD campaigns I've seen by some, Mantle must be a serious threat. I don't know how else to explain it.

Objectively Mantle is a win win. If it succeeds, we get better games on a wider range of hardware. And even if it ultimately fails, it will most certainly shake things up and gaming will be better for it. But please can we all at least wait and see how it plays out? Declaring Mantle a failure after a couple of months of public availability is quite simply idiotic.
 

BrightCandle

Diamond Member
Mar 15, 2007
4,762
0
76
DirectX isn't exactly backwards or forward compatible really. You can't really run a DX11 game on DX9, it doesn't really work. The game itself might contain a DX9 path but the API is sufficiently different that a game written for DX11 will not run on DX9 alone. Backwards compatibility is currently maintained by having multiple versions of the D3D library on the system so the game can load the one it needs.

There is no doubt that GPU power has been climbing dramatically and CPU performance hasn't. This has resulted in a relatively bad situation where games have become draw call limited more and more. It is worth noting however that a switch to a new API is a one time improvement, it doesn't solve the issue for the longer term. Whether we are stuck scaling at 10k or 100k we are still stuck there and the benefits Mantle brings would be sucked up in just 3-4 GPU generations. I am not convinced a new API for the purpose of bridging 6 years will particularly fix anything longer term than that.

We do after all have openGL as an existing standard that can support much better draw call rates and GPU extensions (everything Johan wants) and unlike Mantle its another standard many vendors already provide drivers for. OpenGL also happens to be an API that AMD hasn't implemented very well, they have poor performance and bugs on it and have done for a decade. A new API is a big deal, I would far rather we see an evolution of the existing ones and if a new API is necessary then it needs to be developed on concerted with other companies, or its doomed to obscurity.
 

AnandThenMan

Diamond Member
Nov 11, 2004
3,949
504
126
We do after all have openGL as an existing standard that can support much better draw call rates and GPU extensions (everything Johan wants) and unlike Mantle its another standard many vendors already provide drivers for.
You're telling me Johan knew that OpenGL offered up everything he wanted in an API but decided to ignore that and pursued Mantle instead? What?
 

VulgarDisplay

Diamond Member
Apr 3, 2009
6,193
2
76
did you try adjusting the contrast/other settings to see if you could match dx's image yet?

I swear BF3 had the ability to adjust constrast. The option isn't there in BF4. It really looks like gamma or contrast would go a long way towards fixing it. I really looks like a gamma issue to me.
 
Status
Not open for further replies.
sale-70-410-exam    | Exam-200-125-pdf    | we-sale-70-410-exam    | hot-sale-70-410-exam    | Latest-exam-700-603-Dumps    | Dumps-98-363-exams-date    | Certs-200-125-date    | Dumps-300-075-exams-date    | hot-sale-book-C8010-726-book    | Hot-Sale-200-310-Exam    | Exam-Description-200-310-dumps?    | hot-sale-book-200-125-book    | Latest-Updated-300-209-Exam    | Dumps-210-260-exams-date    | Download-200-125-Exam-PDF    | Exam-Description-300-101-dumps    | Certs-300-101-date    | Hot-Sale-300-075-Exam    | Latest-exam-200-125-Dumps    | Exam-Description-200-125-dumps    | Latest-Updated-300-075-Exam    | hot-sale-book-210-260-book    | Dumps-200-901-exams-date    | Certs-200-901-date    | Latest-exam-1Z0-062-Dumps    | Hot-Sale-1Z0-062-Exam    | Certs-CSSLP-date    | 100%-Pass-70-383-Exams    | Latest-JN0-360-real-exam-questions    | 100%-Pass-4A0-100-Real-Exam-Questions    | Dumps-300-135-exams-date    | Passed-200-105-Tech-Exams    | Latest-Updated-200-310-Exam    | Download-300-070-Exam-PDF    | Hot-Sale-JN0-360-Exam    | 100%-Pass-JN0-360-Exams    | 100%-Pass-JN0-360-Real-Exam-Questions    | Dumps-JN0-360-exams-date    | Exam-Description-1Z0-876-dumps    | Latest-exam-1Z0-876-Dumps    | Dumps-HPE0-Y53-exams-date    | 2017-Latest-HPE0-Y53-Exam    | 100%-Pass-HPE0-Y53-Real-Exam-Questions    | Pass-4A0-100-Exam    | Latest-4A0-100-Questions    | Dumps-98-365-exams-date    | 2017-Latest-98-365-Exam    | 100%-Pass-VCS-254-Exams    | 2017-Latest-VCS-273-Exam    | Dumps-200-355-exams-date    | 2017-Latest-300-320-Exam    | Pass-300-101-Exam    | 100%-Pass-300-115-Exams    |
http://www.portvapes.co.uk/    | http://www.portvapes.co.uk/    |