• Competitor rules

    Please remember that any mention of competitors, hinting at competitors or offering to provide details of competitors will result in an account suspension. The full rules can be found under the 'Terms and Rules' link in the bottom right corner of your screen. Just don't mention competitors in any way, shape or form and you'll be OK.

The Next Generation of Graphics APIs

Caporegime
Joined
12 Jul 2007
Posts
40,581
Location
United Kingdom
Dan Baker of Oxide games helped make DX11, and he was also the graphics lead on Civilization 5. Civ 5’s DX11 mode has some of the highest draw calls of any DX11 game ever made, so he knows a thing or two API's and here are his thoughts. A good read. :)

For this reason, many of the most experienced developers, Oxide included, had for years advocated a lighter, simpler API that did the absolute minimum that it could get away with. We believed we needed a teardown of the entire API rather than some modifications of current APIs. Admittedly, this was after advocating no API at all caused the hardware architects’ faces to pale a bit too much. But if we were to build something evil, at least we could make it the least evil possible.

It was this group of advocates who, with AMD, pioneered the development of Mantle. Mantle was not an API birthed by a hardware vendor, but rather a child born of developers and AMD to create a completely different class of API. AMD selected a small but expert group of developers to help advance it. The intention was not to develop the end-all solution for every developer, but rather to build something that didn’t block our studios from maximizing the very capable GPUs that AMD was building.

This group spent quite a bit of time with AMD going over and helping shape the API. Many of the features and structure of Mantle came from developers, not from AMD itself. For example, we could show that nearly every batch required at least some small data payload, so we built in a specialized fast path just for it.

Much of it was a learning experience for AMD, showing just how many things we as developers really don’t need an API to do. For example, loading textures into GPU memory has to be an asynchronous process, with a few GPU commands called to copy it into place and prepare it before we use it. As it turns out, this task was once owned by the driver, but our engine was perfectly capable of doing it both faster and more reliably than any driver could.

Oxide still remembers the day we did our first tests. We watched as driver overhead, once the dominant chunk of our frame execution time, practically disappeared. We watched as the thick driver threads that often polluted our cache and stole our CPUs disappeared. We watched as the little driver overhead we had linearly scaled across our cores. We saw this, in spite of the fact that Mantle was a very new API, competing against established and optimized APIs. There are still many optimizations that both we and AMD have yet to make!

We heard nothing of the development of a new version of D3D12 until sometime after the early tests of Mantle were indicating that this radically different API model could work, and work well – data which we shared with Microsoft. What prompted Microsoft to redesign DX is difficult to pin down, but we’d like to think that it would never have happened if Mantle hadn’t changed the game. We are delighted in DX12’s architectural similarities to Mantle, and see it is a validation of the pioneering work that Oxide was privileged to be part of.

Does D3D12 mitigate the need for Mantle? Not at all. Though it is difficult to determine without more complete information on D3D12, our expectation is that Mantle will have the edge of D3D12 in terms of CPU performance. This is because the GCN architecture by AMD is the most general of all the current GPUs, and therefore the driver needs to do a bit less.

Full Article
http://www.oxidegames.com/2014/05/21/next-generation-graphics-apis/
 
Caporegime
OP
Joined
12 Jul 2007
Posts
40,581
Location
United Kingdom
I may have posted these before, can't remember so ill just add them here anyway. Two other game devs, Firaxis and Crytek on their Mantle support.

Firaxis said:
By reducing the CPU cost of rendering, Mantle will result in higher frame rates on CPU-limited systems. As a result, players with high-end GPUs will have a much crisper and smoother experience than they had before, because their machines will no longer be held back by the CPU. On GPU-limited systems, performance may not improve, but there will still be a considerable drop in power consumption. This is particularly important given that many of these systems are laptops and tablets. The reduced CPU usage also means that background tasks are much less likely to interfere with the game’s performance, in all cases.
Finally, the smallness and simplicity of the Mantle driver means that it will not only be more efficient, but also more robust. Over time, we expect the bug rate for Mantle to be lower than D3D or OpenGL. In the long run, we expect Mantle to drive the design of future graphics APIs, and by investing in it now, we are helping to create an environment which is more favorable to us and to our customers.
Full Interview
http://www.firaxis.com/?/blog/single/why-we-went-with-mantle


Crytek and AMD have collaborated closely in the past, with the company's AMD CrossFire™ technology helping to power Crysis 3 when the game first wowed audiences at E3 in 2012. Crytek's R&D team says they have benefitted from the practical aspects of working with AMD tech. The reduced CPU overhead and better CPU scaling maintain a draw call count on lower spec CPUs that is usually reserved for higher quality settings. On the GPU front, async compute makes it easier to schedule graphics processing and utilize hardware resources for higher frame rates – meaning the team have been able to issue post processing asynchronously to run in parallel with, for example, shadowmap generation which is rasterizer, not alu, bound.

Reviewing the partnership overall, Crytek's Director of Business Development, Carl Jones, said it was a natural step to support AMD's Mantle. "Our ultimate aim has always been to make CRYENGINE the most powerful, adaptable tool it can be for developers, and this collaboration with AMD is further evidence of that. As we continue to embrace the best technology available we enable all CRYENGINE users to create unparalleled gaming experiences."
Source
http://www.crytek.com/blog/crytek-partner-with-amd-to-bring-mantle-support-to-cryengine
 
Caporegime
OP
Joined
12 Jul 2007
Posts
40,581
Location
United Kingdom
Have a look at the Thief benchmark thread. Big gains for most people on that vs DX.

Single GPU

#1, Avenged7Fold: 290X @ 1300/1600, 4770K @4.5 - Mantle FPS: Min 71.4 / Avr 86.3. Link
#2, Gregster: GTXTitan @ 1306/1881, 3930K @ 5Ghz - DirectX FPS: Min 60.5 / Avr 84.2. Link
#3, tommybhoy: 290X @ 1175/1475, 3770K @ 4.5Ghz - Mantle FPS: Min 59.7 / Avr 81.8. Link
#4, Protoo: 290X @ 1208/1498, FX-9370 @ 4.9Ghz - Mantle FPS: Min 63.0 / Avr 80.3 - DirectX FPS: Min 36.0 / Avr 56.0. Link
#5, Kaapstad: 290X @ 1250/1625, 4930k @ 4.8Ghz - Mantle FPS: Min 61.3 / Avr 79.4 - DirectX FPS: Min 61.9 / Avr 80.2. Link
#6, Humbug: 290P @ 1150/1400, P-II x6 @ 4Ghz - Mantle FPS: Min 58.3 / Avr 70.2 - DirectX FPS: Min 31.5 / Avr 45.4. Link
#7, ElliorR: 290P @ 977/1250, 4670k @ 3.4Ghz - Mantle FPS: Min 56.1 / Avr 66.8 - DirectX FPS: Min 34.7 / Avr 60.7. Link
#8, Protoo: 7950 @ 1250/1751, FX-9370 @ 4.8Ghz - Mantle FPS: Min 46.5 / Avr 58.5 - DirectX FPS: Min 34.5 / Avr 50.8. Link

Your results do look a tad low for the clocks used as well Kaap, on both API's.
 
Caporegime
OP
Joined
12 Jul 2007
Posts
40,581
Location
United Kingdom
Bloody hell Kaap u faked 4K with a resolution scale on a rather buggy game and yer gona base it all on that? Come on man.. sell some of those cards u got.. buy a 4K monitor and test again ;) :p

Kaap's lost the plot. :p

I let DM address his post. :D

I will say this, Mantle has never been pushed for 4K that im aware of and i don't miss much AMD related. They pushed the 290X for 4K, but that runs BF4 fine in DX. When the 290X was being pushed for 4K, mantle was not even announced yet. (i think)
 
Last edited:
Caporegime
OP
Joined
12 Jul 2007
Posts
40,581
Location
United Kingdom
Show me a launch slide where Mantle was specifically pushed for 4K Kaap? I don't recall seeing one but am happy to be proved wrong on this. I expect all you'll have is a 290X being pushed for 4k, which it can cope with perfectly fine in DX which is very mature now.

We speculated (i think) that mantle might use less vram. It does not in BF4, but that appears to be an extreme case judging Thief and Starswarm which have no such issues. Did you conveniently forget those? At the end of the day its up to the game developers to manage the memory usage i believe though, so just because under BF4 it uses more vram does not necessarily mean its the case for every game.

For most of us Kaap Mantle is so much better than DX, however in your scenario its not. Thankfully a tiny fraction use a quad fire setup, Mantle and 200% resolution scaling or whatever setting you used. The important thing is at 4k a 290X has enough vram on DX and according to HardOCP it does on Mantle as well. This is using a proper 4K screen and not using in game resolution scaling which is very harsh on the video memory, particularly on Mantle.

You might think and want Mantle to fail Kaap, but it already has more games (20+) in development than DX11 did in its first year. This was before Mantle became a private beta and 40 more development studios signed up. Its likely this number is going to grow even more over the coming months and expect more announcements about it. ;)

Hardly the sign of an API getting left behind, no?
 
Last edited:
Caporegime
OP
Joined
12 Jul 2007
Posts
40,581
Location
United Kingdom
http://www.dailytech.com/AMD+Soft+L...Programmable+Audio+in+Hawaii/article33449.htm

It was all in the same presentation (mantle and uhd) but not directly affiliated, though one would presume showing a 4k/eyefinity slide straight after bigging up mantle would suggest it helps at mad resolutions.

Thought as much. ;)

Just seems using high levels of resolution scaling in BF4 is too much for it under Mantle.

Worth noting i posted some decent results using 140%-50% resolution scaling at 1440P - 4k Res. I was very close to exceeding the vram limit, but i did not exceed it and there were no spikes at all.

1440P Ultra Preset +x4 MSAA - Mantle API
140% Resolution Scaling = 3584x2016

ScreenshotWin32-0001.png

4QsWcCW.jpg

1440P Ultra Preset +x2 MSAA - Mantle API
150% Resolution Scaling = 3840x2160


ScreenshotWin32-0001%201.png

ZTij1JK.jpg


Next up, x4MSAA @4K.

1440P Ultra Preset +x4 MSAA - Mantle API
150% Resolution Scaling = 3840x2160


1.png

q4ehBHD.jpg
 
Last edited:
Caporegime
OP
Joined
12 Jul 2007
Posts
40,581
Location
United Kingdom
I am not trying to start anything here, but looking at those numbers and comparing the 290X to the Titan it looks more like DX is dogging on AMD cards in Thief rather than Mantle is pumping on them :S

Well the only one with a similar cpu to Greg is Kaap and his score is four fps behind on an engine that favours Nvidia massively. Unreal Engine always has, just look at my Bioshock thread. Kaap's scores also look a little low. Tommy is beating him with much lower gpu clocks. Will be interesting to see if Mantle can tip that balance though. Crossfire support is coming soon ive just heard.
 
Caporegime
OP
Joined
12 Jul 2007
Posts
40,581
Location
United Kingdom
At which point did I suggest there was a direct link between 4k and mantle on those slides :confused:

I quite clearly said there was no direct affiliation on the slides between the two of them.

Or are you needlessly jumping down someone's throat for the sake of it again?

I think you might be overreacting a bit there old boy. I think the first part is he's referring to my post and the second part well, there's nothing nasty written there.
 
Caporegime
OP
Joined
12 Jul 2007
Posts
40,581
Location
United Kingdom
I don't know what all the fuss is about.

I have said that Mantle + BF4 + extreme settings + Multi GPUs is rubbish - this is true.

I have also said that Mantle in other situations works very well - this is also true.

The real problem for some people is I have pointed out that Mantle is rubbish under some conditions, even HardOCP had problems with Mantle compared to DX11.

Mantle has got weaknesses and faults - people have got to accept and live with it.

The fuss is because you called the beta API embarrassing because it did not work as well as DX did for you. On your quad fire, ivy-e setup using 200% resolution scaling. For most of us, it works very well (despite the ongoing issues with Battlefield 4) so its no surprise that there is a bit of 'fuss' over your claims.

No one thinks Mantle is perfect Kaap. I've listed many of the problems in the BF4 benchmark thread. The main one is the vram usage as far as im concerned. There was a stall issue initially, but that has been fixed for a while now. Yes there are cpu spikes when you exceed the vram limit, but that's hardly a shock is it. DX behaves exactly the same way. Funny, cos you used to insist if you breach the vram limit you hit 1 fps, well it does not work like that in BF4 from my testing under DX and Mantle. If there are cpu spikes in other scenario's it's most likely down to the game itself. I think we all know that from the BF4 benchmark thread.

Do you really know what Mantles weaknesses and faults are? Or are you just referring to how its been programmed by Dice in BF4? Because at the end of the day any fault likely lies with the game itself rather than an issue specifically related to Mantle API. If this was the case, then star swarm and thief would have the same issues with vram, would they not?
 
Last edited:
Caporegime
OP
Joined
12 Jul 2007
Posts
40,581
Location
United Kingdom
After all the hype about Mantle it is embarrassing how much better DX11 is than Mantle when using extreme settings. If you check the scores HardOCP managed as I pointed out in another thread they are considerably worse than what I have managed.

Mantle is good in a lot of situations but it is not good in all.

So you would agree that Mantle is better in a lot more situations than DX then? As far as i can see it, you have one or two specific situations which virtually no one uses that DX excels in over Mantle. In that situation AMD users can just use DX until the free Mantle API is brought up to scratch in its vram usage and quad gpu scaling.

You didn't answer my question so i assume you know the issue likely lies with the programming of BF4 via Dice than via a problem specifically related to the API itself.
 
Last edited:
Caporegime
OP
Joined
12 Jul 2007
Posts
40,581
Location
United Kingdom
truth really lol.

I've seen and spoken with a friend of mine who I've met through another board, and DX12 will offer practically everything Mantle has but with the footing that Microsoft already have on the industry. It's certainly not all smoke and mirrors.

I hope that's the case, it will be good for us all. If not, well we'll have a established Mantle to fall back on by then. Lets hope DX12 does not end up bloated and offers the same level of cpu performance as Mantle.
 
Caporegime
OP
Joined
12 Jul 2007
Posts
40,581
Location
United Kingdom
I genuinely think people are quick to judge DirectX though. The 'DX Magic' texture handling seems a lot more stable than letting developers loose on it, it would seem. The only two Mantle titles we have currently seem to be overflowing drastically in this department.

Aside from BF4 what other title has a problem with using too much vram under Mantle?
 
Caporegime
OP
Joined
12 Jul 2007
Posts
40,581
Location
United Kingdom
Oh so 50% of the available Mantle titles isn't enough then.


Come on there are only two games out and one has a good few issues for some people, I'm sure there are people with issues with direct X as well but people are not saying that it is all rosey.

(I know you were not saying it is all rosey, but that is the general feeling that seems to coming across from the red camp at the moment)

Kaap tried one of the two games available and let you know his findings, and yet he's getting grilled for it. :rolleyes:

Did i say that? I asked what other titles had issues with vram usage as Frosty specifically mentioned it. Further this vram issue is down to Dices programming of Mantle and their memory management, not something that is to be associated with the API in general on other games. There is no evidence in the other Mantle title Thief and the Mantle demo StarSwarm that such an issue exists. Perhaps this issue is just down to BF4.

As for getting grilled, he's not he's just getting called out somewhat for saying its embarrassing because in his one specific and extremely unique experience 5 year old DX performs better than 5 month old Beta Mantle. Never mind all other instances that affect pretty much everyone in which Mantle is better in every facet, the only thing that counts, matters and will affect this API's life expectancy is the one thing that affects virtually no one, currently.

If it's even implemented.

Its in at least four major game engines already and its only 5 months old. Until DX12 is here id say it will be implemented more than people would intially think.
 
Last edited:
Caporegime
OP
Joined
12 Jul 2007
Posts
40,581
Location
United Kingdom
Being 'in' a game engine (what does that even mean :p) not equal to being in games though.

At the end of the day until it actually manifests itself into games alongside DX more often people will remain sceptical.

Well games aren't made overnight unfortunately, i wish there were more ready but what can you do. Its reassuring to know that there are many in development though. The more game engines that support Mantle the better, i think. With DX12 still a year or longer away though there is plenty of time.

I agree, NV's DX isn't that far off at all, especially once we add some more green to the top of the list:
:D

Thief loves some fast CPUs at low resolutions.

15 fps faster than Greg's water cooled overclocked titan. Looks legit, not. :D

How long ago was that bench run?
 
Caporegime
OP
Joined
12 Jul 2007
Posts
40,581
Location
United Kingdom
I think some of you have missed Kaaps point,, In His situation mantle is worse than DX He has as much right to say its not working for him as Humbugs Saying his low cpu is preforming as good as a latest top one .
Yet i dont see him being ridiculed for it. Mantle isnt perfect a lot of you admit it yet as soon as one of its issues is pointed out you all jump on that person going on about other stuff.
Mantle is a great thing for a lot of Users but atm its not for everyone , And yes there are issues like the Vram thing which is in 50% of released mantle games,, Yes it may be dice or it may not be there simply isnt enough games out there atm to judge. Does thief have it ,no but once again this is a 50% sample and to dismiss bf4 vs it is silly as thief might well have other reasons the vram doesnt change it may not been using all the aspects of mantle BF4 does we dont know until more games are released.

Nothing wrong with expressing an opinion, but perhaps it could and should have been worded better. If you express such a strong opinion about something then people are entitled to react to it. Especially if the opinion expressed goes against the grain of many others. I don't think anyone responded inappropriately to what was said either.

Game devs are responsible for the memory management in Mantle triss, that's how it works. So yes, we are right in this instance to say its a BF4 fault not a Mantle fault.

Johan Andersson's slides from his Mantle presentation, sub section memory management. He talks about stalls, over committing memory and they hope to redesig how the memory management works in BF4 to avoid over committing. The exact issue Kaap is talking about.

r6F5pMt.jpg

BMeZ3pa.jpg

Source
http://www.slideshare.net/DICEStudio/rendering-battlefield-4-with-mantle
 
Caporegime
OP
Joined
12 Jul 2007
Posts
40,581
Location
United Kingdom
Another take on Mantle from a different programmer. Josh Barczak Lead Graphics Engineer at Firaxis Games.

Mantle gets a lot of flak for being “single-vendor”. It does not have to stay this way, and AMD is clearly willing to standardize it. There is NOTHING in its design that would prevent this. The hurdles involved are political, not technical. While I would obviously prefer one standardized API, I would be willing to use more than one, if it meant that my customers could achieve a significantly better experience. Vendor specific APIs have been done before and are worth at least a thought experiment.

Source
http://www.joshbarczak.com/blog/?p=99
http://www.joshbarczak.com/

IIRC some people told me I had lost the plot.:D

Well you did find it embarrassing, so yes you did lose the plot. It's to be expected at your age though in all fairness. :p
 
Last edited:
Caporegime
OP
Joined
12 Jul 2007
Posts
40,581
Location
United Kingdom
The best and fastest way to improve Mantle is to highlight any faults or problems it may have and hopefully get them addressed.

Having said that the same approach does not seen to be working with Dice and BF4.

While we are on the subject of Mantle games, when are we going to get decent CF support for Thief ?

AMD & Dice both know there is still work to do. But right now they're working on the system that matter to the large majority of us.

Both AMD and Johan Andersson have told me that Mantle-based multi-GPU support in Battlefield 4 is still in its early phases

I think its clear that with Battlefield 4 there is still work to be done with the Mantle multi-GPU implementation. Both AMD and DICE are forthcoming about this, but I thought it was important to run a set of tests today to have a baseline to measure improvements going forward. There are great signs of what direct access APIs can offer for multiple GPUs in a system - the reliability of frame times with the Core i7-3960X is astounding and bests anything we have seen on DirectX from either AMD or NVIDIA.

Source
http://www.pcper.com/reviews/Graphi...e-CrossFire-Early-Performance-FCAT/Platform-C

They're aware of the problems Kaap, but quad fire setups are of lower priority than single and crossfire setups currently. You'll just have to be patient and in the meantime, use DX. Its not the end of the world is it. Not like you have to use Mantle because DX is terrible.

As for Thief, when Eidos implement it. Its not something AMD can do at driver level. Having said that, ive been told by a reliable source its coming very soon. ;)
 
Caporegime
OP
Joined
12 Jul 2007
Posts
40,581
Location
United Kingdom
I'm not sure how he can imply this, Mantle gives performance increases because of its GCN architecture specific programming, if it was coded for generalised architectures then it would not give the performance increases it currently gives and would essentially be the same thing as DirectX except for perhaps a bit more low-level access and reductions in calls to slow functions.

Barczak here claims that the "hurdles involved are political, not technical", I find this very difficult to believe given my comments above. It is highly unlikely that Mantle already contains code for different architectures (e.g. Nvidia GPUs) and therefore one cannot say that there are no technical hurdles involved.

Furthermore, he then goes on to contradict himself in saying he would be willing to use more than one vendor specific API - implying that he would support Nvidia creating their own graphics API even though it was made quite clear that he thinks there are no technical issues with getting Mantle to work on non-AMD/non-GCN-architecture based hardware.

Well i guess he knows more than you and certainly more than me seeing as he programmes games. He does not work for AMD so there is no reason to lie. If you know different then please share, but i doubt you do. If he is wrong as you state, contact him about it and bring it to light and enlighten us all.
 
Caporegime
OP
Joined
12 Jul 2007
Posts
40,581
Location
United Kingdom
The reasons are technical, if AMD are willing to standardise it, this means that there are technical reasons at the moment.

And how long would this standardising take anyway ?

Mantle needs to come out of Beta, once that happens it will be standardised. It will happen around the end of year. :)
 
Caporegime
OP
Joined
12 Jul 2007
Posts
40,581
Location
United Kingdom
I just told you my thoughts, and as far as I am aware everything I commented on is accurate - hence why I am confused as to how Barczak can be making those claims. Of course, I have never even seen a line of Mantle coding before so I'm not exactly sure but from what I've heard of it, Barczak's claims seem off.

Whilst I've never coded anything Mantle related (of course), I do have Direct2D and OpenGL programming experience as well as extensive use of C++ (specifically VC++ in Visual Studio), MATLAB and C# - so I'm not approaching this topic completely blind, as I hope you can appreciate :)

Who to believe though? Someone who has coded games and is using Mantle now, or you? I'm going with him im afraid. Unless you can give me anything substantial to doubt what him and other game developers continue to say about Mantle. You've not worked with Mantle, so what makes you in any way qualified to dismiss these claims? Please contact him, id like to see where it leads.
 
Back
Top Bottom