Feedback

AMD Exposes Mantle - A New Hardware Level API

Author:
Manufacturer: AMD

Earth Shattering?

AMD is up to some interesting things.  Today at AMD’s tech day, we discovered a veritable cornucopia of information.  Some of it was pretty interesting (audio), some was discussed ad-naseum (audio, audio, and more audio), and one thing in particular was quite shocking.  Mantle was the final, big subject that AMD was willing to discuss.  Many assumed that the R9 290X would be the primary focus of this talk, but in fact it very much was an aside that was not discussed at any length.  AMD basically said, “Yes, the card exists, and it has some new features that we are not going to really go over at this time.”  Mantle, as a technology, is at the same time a logical step as well as an unforeseen one.  So what all does Mantle mean for users?

View Full Size

Looking back through the mists of time, when dinosaurs roamed the earth, the individual 3D chip makers all implemented low level APIs that allowed programmers to get closer to the silicon than what other APIs such as Direct3D and OpenGL would allow.  This was a very efficient way of doing things in terms of graphics performance.  It was an inefficient way to do things for a developer writing code for multiple APIs.  Microsoft and the Kronos Group had solutions with Direct3D and OpenGL that allowed these programmers to develop for these high level APIs very simply (comparatively so).  The developers could write code that would run D3D/OpenGL, and the graphics chip manufacturers would write drivers that would interface with Direct3D/OpenGL, which then go through a hardware abstraction layer to communicate with the hardware.  The onus was then on the graphics people to create solid, high performance drivers that would work well with DirectX or OpenGL, so the game developer would not have to code directly for a multitude of current and older graphics cards.

Read the entire article here.

Sure, guys like 3dfx would update their GLIDE API to handle legacy applications and legacy hardware as well as current products and new games.  This still was too much work for developers.  Creating different rendering engines that would take advantage of features on these chips all the while addressing support for 3dfx’s GLIDE, Rendition’s RRedline, or S3’s Metal was just too much.  So we moved on to embrace Direct3D and OpenGL.  Sounds like heaven, right?  Not necessarily so.  We have had issues with good driver support for these high level APIs.  The high level APIs are not efficient, and the overhead that they impose impacts both performance and latency.  These APIs have improved over time, especially with the jumps to DX11 and OpenGL 4.0.  Still, they have enough of a hit that performance can be improved by getting rid of them altogether.

This is what Mantle does.  It bypasses DirectX (and possibly the hardware abstraction layer) and developers can program very close to the metal with very little overhead from software.  This lowers memory and CPU usage, it decreases latency, and because there are fewer “moving parts” AMD claims that they can do 9x the draw calls with Mantle as compared to DirectX.  This is a significant boost in overall efficiency.  Before everyone gets too excited, we will not see a 9x improvement in overall performance with every application.  A single HD 7790 running in Mantle is not going to power 3 x 1080P monitors in Eyefinity faster than a HD 7970 or GTX 780 (in Surround) running in DirectX.  Mantle shifts the bottleneck elsewhere.

View Full Size

What kind of improvements can we expect?  Performance will increase when things are not shader bound.  We probably could see an improvement in geometry handling (higher polygon scenes).  Other than that though, do not expect miracles.  In applications that require multiple shading passes, complex lighting, tessellation and deformation, we might see improvements in the single digit percentages, perhaps as high as the low teens.  Still, it is an improvement and it will give AMD a leg up in these applications that utilize Mantle as compared to their primary competitor which still uses DirectX and OpenGL.

This development is not exactly unprecedented, though it was unexpected at this time.  Both Sony and Microsoft are already essentially going this route with their next generation consoles.  In fact, both of these companies have been doing this for several generations of consoles.  They enable developers low level access to the hardware and control of memory addresses and accesses which makes graphics on these consoles very efficient.  As software for consoles improves over time, these developers can create tricks and optimizations to squeeze every last ounce of performance from these machines.  If we were to compare graphical fidelity of the latest titles to those at the consoles’ launches, it is almost night and day where we have come to.  This “close to the metal” approach is very efficient and allows for a lot of flexibility for programmers.

So why are we seemingly going back in time?  It seems that in computer technology the idea of “what was old is now new again” keeps coming around.  So why does Mantle sound like a good idea?  First of all, we do not have a dozen competing APIs from the likes of 3Dfx, Rendition, PowerVR, ATI, S3, Matrox, and others.  Secondly we have a huge impetus for this movement from the next generation consoles which both implement AMD’s GCN architecture.  Developers will already be familiar with the architecture and very similar programming techniques.  Going to Mantle would not be trivial, but at the same time it does not require a total rewrite of the renderer to support.

Battlefield 4 will be the first title to natively support Mantle, and that support will be released to users as a free update in December.  BF4 is based on the Frostbite 3 engine, which will be powering around 15 titles over the next year.  Obviously most of these titles will have no need to support or implement Mantle, but we could see a couple test out that technology.  The more important support could come from titles initially developed for the consoles and ported to the PC.  We also have that little free radical called the Steam Box.  While AMD is working with Valve to have drivers ready to go, we do not know if Valve will embrace Mantle for their titles.  It seems somewhat unlikely because Valve is offering SteamOS for free and for multiple configurations.  NVIDIA still has the majority of standalone gaming cards in the wild, but AMD is slowly closing that gap.

View Full Size

Mantle is an interesting move for AMD.  While Mantle may not conquer the world overnight, as AMD starts to ship GCN based APUs we could see an uptick of interest.  Not everyone owns a high end graphics card, but there will be a larger group of people with a GCN based APU in their machine.  As the numbers start growing, then interest with developers will increase.  When we combine the numbers for PS4, XBOne, and APU enabled PCs, then the numbers may make sense for developers to focus on implementing a Mantle based pathway for their games.  Time will tell.

September 26, 2013 | 02:19 AM - Posted by PapaDragon

Thank you for the great article Josh, very easy to understand!

September 26, 2013 | 03:08 AM - Posted by Gabkicks

I just ordered a ASUS gtx 780 DCUIIOC yesterday for about $100 less than retail.
Now this r9 290x mantle news is making me wonder if I made a mistake. I'm looking forward to tomorrow's podcast!
I wish amd would support lightboost 2.

September 26, 2013 | 10:43 AM - Posted by Josh Walrath

Sounds like a decent deal for that card.  It will be interesting to see where exactly the R9 290X/290 cards will come in.  AMD usually sticks to a good price/performance ratio.  The one thing we don't know yet is the exact release date of the latest cards from AMD.  We certainly don't know the performance either!  Still, you will quite likely enjoy your GTX 780!

September 26, 2013 | 02:53 PM - Posted by Spigzone (not verified)

One might presume the same applies to AMD vs Nvidia graphics cards.

Digital Foundry in April of this year:

"We approached a number of developers on and off the record - each of whom has helped to ship multi-million-selling, triple-A titles - asking them whether an Intel or AMD processor offers the best way to future-proof a games PC built in the here and now. Bearing in mind the historical dominance Intel has enjoyed, the results are intriguing - all of them opted for the FX-8350 over the current default enthusiast's choice, the Core i5 3570K"

http://www.eurogamer.net/articles/digitalfoundry-future-proofing-your-pc...

September 26, 2013 | 09:08 PM - Posted by Anonymous (not verified)

lol. those Germans are a silly bunch. Crysis 3 as their primary example? The game SUCKS. It shows they cherry picked taht title to make AMD CPU's look good... by a whole 2 frames over a slower clocked Intel chip. Pathetic. AMD CPU's are garbage.

September 27, 2013 | 04:30 AM - Posted by Anonymous (not verified)

Those 2 fps are a lead over a CPU which costs considerably more than the FX chip (100€, to be precise).
In addition, the assumption is not based on Crysis 3, but on the available hardware in PS4 and XBONE.
The CPU architecture is the same as in the FX chips.
Naturally, any cross platform game will benefit from the similar CPUs.
The same is true for the GPUs and Mantle.
Both MS and Sony may claim, the APIs for their consoles are their own, but the HW is from AMD and they certainly have provided the libraries and coding guides - this strongly points to Mantle.

September 27, 2013 | 10:06 AM - Posted by Josh Walrath

PS4 and XBOne both utilize Jaguar based cores... FX chips are Piledriver.  There are HUGE differences between those products.  Do not automatically assume that titles optimized for those 8 core, Jaguar based units will automagically work better on Piledriver based CPUs/APUs.  Hell, Steamroller has far more in common with Piledriver than Jaguar.

September 27, 2013 | 11:09 AM - Posted by Positron (not verified)

Bulldozer/Piledriver cores run at twice the clockspeed of the Jaguar cores. That should be sufficient to overcome any specific Jaguar optimizations.

September 27, 2013 | 11:21 AM - Posted by Josh Walrath

But Intel's last several generations of i7/i5/i3 processors all have better IPC than Piledriver and run at the nearly the same clock rates... so shouldn't they also overcome those Jaguar optimizations as well?  So its a push when it comes to desktop processors when dealing with this code?

September 26, 2013 | 04:14 AM - Posted by Rambito (not verified)

Will mantel only support APU's running GCN cores.
Will it support FX series.
Is it just a new render that substitute DX11 or is it hardware(architecture) and software change.
Also do you think it will only support PCIE 3.0 or backward compatible. So many questions about this...

September 26, 2013 | 10:45 AM - Posted by Josh Walrath

For the time being it looks like it will only support GCN based graphics.  So Llano, Trinity, and HD 6000 series and below may not work with Mantle... but we don't know that for sure.  My guess is that anything less than GCN will not be supported.  

FX series?  You mean the CPUs?  If so, then no... it will only work on GPUs.

Mantle won't care if you use PCI-E 1.0.  It is an API that communicates in a very direct manner with the GPU.

September 27, 2013 | 04:33 AM - Posted by Anonymous (not verified)

According to the claims from dice, Mantle reduces the overhead so much, that they finally can really use all CPU cores available for a game.
So Mantle has an indirect effect on the CPUs and will even improve the performance in this regard.

September 27, 2013 | 10:06 AM - Posted by Josh Walrath

If that is the case, then I am really excited to get to test this out come December.

September 26, 2013 | 05:38 AM - Posted by IndoAssassin (not verified)

Is Mantle open API? If it is, will Nvidia adopt it?
If Nvidia does adopt it why would Valve not then implement Mantle into their OS?

September 26, 2013 | 10:48 AM - Posted by Josh Walrath

Mantle is not an open API.  It is essentially a tool that allows programmers to more directly access the GPU, without multiple layers of software dictating behavior.

NVIDIA cannot adopt it because it is AMD's API, and furthermore their GPU designs are totally different, so such a low level API will not work at all for NVIDIA hardware.  They would need to do some kind of emulator to sit between Mantle and their GPU (which has been done in the past for D3D/GLIDE games), but that emulator will likely have just as big of a performance hit as when using standard DX11/DirectX.

September 26, 2013 | 03:46 PM - Posted by Desp (not verified)

Techspot confirmed that Mantle is an open API.

"We've been told at the GPU14 Tech Day event that the Mantle API is open, so theoretically Nvidia could purpose the technology in their GPUs. It should also make cross-development between PC and console games a lot easier, and also more incredible for those with a high-performance AMD GPU."

http://www.techspot.com/news/54134-amd-launches-mantle-api-to-optimize-p...

September 26, 2013 | 04:06 PM - Posted by Josh Walrath

Huh, this is going to be interesting exactly how this will shake out.  Gonna need to get more info out of AMD how exactly they think this can be implemented.

September 29, 2013 | 08:32 PM - Posted by Chris Stevenson (not verified)

I think it would be possible to NVidia to develop a GPU that performs well with Mantle. The real question is will NVidia so do.

September 30, 2013 | 12:13 PM - Posted by Josh Walrath

I guess anything is possible.  If Mantle is truly an open API, then NVIDIA might be able to develop a lightweight driver that fits between the hardware and Mantle.  Perhaps think of it like a mini-GL back in the GLIDE days (remember that Quake/Quake II were developed with OpenGL in mind, but few graphics guys had a full OpenGL ICD available.  We will find out more at APU14 when they disclose more of the specifics.

September 26, 2013 | 07:02 AM - Posted by Daniel Nielsen (not verified)

So am i right in thinking this is sort of like low level hardware access to that what developers can get in the consoles for example?

If so, this will be really interesting.

September 26, 2013 | 10:50 AM - Posted by Josh Walrath

You are absolutely correct.  While the consoles do use D3D (XBOne) and OpenGL (PS4), those software layers are very optimized and have very low overhead.  This is because the driver model does not have to be so general as to support multiple hardware combinations.

September 26, 2013 | 07:16 AM - Posted by Coupe

Seriously, Josh is one of the best writers in the tech industry.

September 26, 2013 | 10:51 AM - Posted by Josh Walrath

Well thanks, I appreciate it.  But there are some seriously good writers out there that outstrip me.

September 26, 2013 | 06:51 PM - Posted by derz

hes so modest

September 26, 2013 | 07:42 AM - Posted by artins90 (not verified)

I hope AMD won't abandon 7000 series users let's hope DX 11.2 and Mantle are coming to the 7000 series, fingers crossed.

September 26, 2013 | 10:53 AM - Posted by Josh Walrath

I'm pretty sure that DX 11.2 and Mantle will be coming to the HD 7700 series and above.  Especially since most of the A7 and A9 series (except 290/290X) are all rebrands of current HD series GPUs based on GCN.

September 26, 2013 | 08:17 AM - Posted by Klimax (not verified)

Sorry, but it is move back to 90s and fragmentation. DirectX doesn't impose that huge overhead, but definitely allows for uniform access.

Mantel is just another name for vendor lock-in and new Glide. There is no advantage for us gamers or for us programmers. We won't get better graphics, we will just get incompatibility. AMD shouldn't be praised for this, because it is even worse then PhysX...

September 26, 2013 | 09:46 AM - Posted by Can you even read? (not verified)

Uniform access? You mean like vendor locked to M$haft.
No, a new lower level cross platform API is totally win.

September 26, 2013 | 11:36 AM - Posted by ltguy (not verified)

This is a sad day. All my excitement for how consoles would benefit pc gaming is gone now that I see that AMD wants all the cross platform games to only run well on their video cards. I was completely against Nvidia during their physx days and likewise I wont support AMD during their mantle days. Just when pc gaming was finally starting to pick up again, fragmentation from steam os and amd mantle are going to drag us right back down.

September 27, 2013 | 10:14 AM - Posted by Josh Walrath

Meh, that's a bit of an overreach.  It is a feature that AMD is offering, but it certainly won't cut the other players out.  NV and Intel have a lot of pull.  Intel is getting VERY serious about graphics these days, so they won't put up with a lot of nonsense.  Plus then we also have the guys in the mobile space... Imagination Tech/PowerVR, Qualcomm/Adreno, and ARM/Mali.

I have a theory about how all of these things are going to shake out... but I need to get more information to discuss it at length.

September 30, 2013 | 06:21 AM - Posted by Jules (not verified)

It's a sad day because a cross platform open API that let's multiplatform game developers port their console games to PC with console optimization AT NO EXTRA COST?

AMD just give A LOT MORE value to their customers, unlike some that promote proprietary format, and those who removes modest 'free' overclocking...

Or it's a sad day because you like companies other than AMD?

Tell me more about your "sad day".

September 30, 2013 | 12:17 PM - Posted by Josh Walrath

We are not entirely certain that porting from PS4/3 or XBox/XBOne to Mantle will entail no extra cost.  My understanding here is that while the APIs for consoles are pretty lightweight and allow for a great deal of control by the software guys, they are not identical to what Mantle is.  I like that we have more flexibility in the future for the PC, but I don't think that it will be free for any software/game dev to port to Mantle.  DICE, with the help of AMD, will only be releasing their Mantle implementation about 2 months after the release of BF4.  The BF4/AMD deal has cost AMD millions of dollars to not only get them into the Never Settle, but also to help pay for the implementation of BF4/Mantle.

September 26, 2013 | 12:48 PM - Posted by Josh Walrath

My gut feeling here is that it will have an impact on gaming much like PhysX has.  Sure, they are in games, but most of it is using the CPU fallback rather than GPU accelerated.  I think that we will see a few titles which will use this, but I really don't think that most developers will spend the extra time and money to develop a Mantle pathway.  Time and money will trump all when it comes to developers, and unless you are a guy like Carmack who does such things for fun and self-education, I think the impact Mantle will have will be pretty insignificant.

September 30, 2013 | 03:29 PM - Posted by Anonymous (not verified)

But isn't that the wrong way around....most games are developed with the console as priority as that's where the money is...if the consoles are using low level api's similar to Mantel then the question is surely whether they would spend the extra dolar to make D3D/OpenGL versions for PC instead of just shipping them in Mantle versions.

September 30, 2013 | 07:42 PM - Posted by Josh Walrath

So all those NVIDIA and Intel graphics customers have no choice but to either buy an AMD card or skip the game altogether?

September 30, 2013 | 03:29 PM - Posted by Anonymous (not verified)

But isn't that the wrong way around....most games are developed with the console as priority as that's where the money is...if the consoles are using low level api's similar to Mantel then the question is surely whether they would spend the extra dolar to make D3D/OpenGL versions for PC instead of just shipping them in Mantle versions.

September 26, 2013 | 10:32 AM - Posted by Shrouty Ryan (not verified)

Fantastic article as always Josh, thank you.

September 26, 2013 | 12:35 PM - Posted by praack

nice article Josh,

the fact that there is a defined performance hit using the high level programming should be a wake up call on its own. though you always get some performance impact usually it is not that much, but over the years the levels of coding have increased from those years done as you say "at the metal"

to perform programming with little additional resource impact but at a low level that increases performance- well that is a win-win scenario

September 26, 2013 | 01:11 PM - Posted by Anonymous (not verified)

What does this Mantle move do for AMD's OpenGL support, and the open source graphics programs, and other software that use OpenGL? Will there be continued support for openGL standards and legacy applications?

P.S. Your website Locks UP IE 9, and my computer for about 30 sec. before Your page finally loads.

September 26, 2013 | 01:16 PM - Posted by Josh Walrath

It really shouldn't have any negative effect on OpenGL.  AMD will still develop drivers for D3D and OpenGL, not to mention OpenCL and other GPGPU languages.

Not sure why the website locks up your browser... will pass that info along.

September 26, 2013 | 01:57 PM - Posted by Gregster

Great read cheers Josh. Just getting my head around this a bit but would it not pay for MS and Sony to adopt this mantle as well? Unless I am missing something and they already are, it seems the obvious choice to me.

September 26, 2013 | 02:32 PM - Posted by Josh Walrath

Since Sony and MS build their solutions around these chips from the ground up, they already are running software that is close to the metal.  There is no reason to put these thick abstraction and OS layers over draw calls if developers are only writing code for very specific hardware configurations.  It is like compiling Linux on a single machine.  You only have to include the basic stuff you need for the hardware that is present.

September 26, 2013 | 02:59 PM - Posted by Gregster

Makes sense cheers for clearing that up.

September 26, 2013 | 04:36 PM - Posted by Anonymous (not verified)

I figure it will make sense for the game studios to adopt this for console-oriented games, esp. if both XBox and PS4 support it (which AMD will make happen, I'm sure). This will in fact make ports of those games easier and better-performing, for AMD-based cards. Should blunt the advance of NVidia, as well as making Intel's increasingly performant graphics solutions less desirable.

September 26, 2013 | 02:42 PM - Posted by Mladen T (not verified)

DICE presentation mentioned several improvements in CPU accessing and rendering performance with Mantle API. Im very curious to see what gains we will get in real-world tests (BF4).
http://www.techpowerup.com/img/13-09-25/mantle3.jpg

September 26, 2013 | 03:47 PM - Posted by Josh Walrath

Absolutely.  Proof is in the pudding?  That is the test we are all waiting for.  DICE has also been enthusiastic for using up to 8 threads in their games... and utilizing the latest 4 module FX cores.  Everyone is very curious about how BF4 turns out.

September 26, 2013 | 04:05 PM - Posted by arbiter

I have voiced this a few times, but for people that can remember back to when MS didn't use NT based OS, the old Windows 9x windows how unstable things could get when programs have low level access to the hardware. With it not using DX, wonder what kinda graphic's different there will be.

September 27, 2013 | 12:29 AM - Posted by ezjohny

Excellent article Josh, very interesting too. I am curious about this mantle, lets hope it is a step up for AMD, if it is. Then AMD needs too focus on making there APU # 1 if they could do it. PC gamer out.

September 27, 2013 | 08:35 AM - Posted by Carlo (not verified)

Josh: do you know if Mantle handles the new audio "onboard" on the video card ?

September 27, 2013 | 10:10 AM - Posted by Josh Walrath

They have not given us such details at this time.  It might, but the audio stack in Windows may not allow such direct control?  I'm not ruling it out though, it is a complex implementation considering what happened with hardware audio when Vista came out and MS took over the audio stack in software.

September 30, 2013 | 08:08 AM - Posted by Carlo (not verified)

Thanx Josh.
I was dreaming about the possibility to handle sound source very much like light source, in the same 3d virtual world.
Every mob that can be draw in 3d could have its attached sound properly propageting, reflecting etc.

Hundred of sounds all at once.

Bye.

September 30, 2013 | 11:03 AM - Posted by Josh Walrath

I believe that what you have described is what Aureal was attempting to do before they were litigated into oblivion.

September 27, 2013 | 11:10 AM - Posted by Anonymous (not verified)

From many dev interview I read before these anouncement, they were asking this kind of Mantle

so AMD respond to it specialy cause now all platforme can have GNC gpu
so it's a saving of time for dev that what more controle on their render

for NVIDIA to bad maybe... but they can also propose same tool for dev that want to push theire card

but it's a good thing for PC cause now wee can expect beter optimize game developped for console in first place

September 27, 2013 | 11:11 AM - Posted by Anonymous (not verified)

"dev that want"

September 27, 2013 | 11:39 AM - Posted by Goofus Maximus (not verified)

Thank you for removing the crust of obfuscation to get right to the core of Mantle, even though you had enough on your plate already, so it wouldn't have been your fault if you'd drifted off to another topic...

I'm on a roll!

September 27, 2013 | 12:22 PM - Posted by Josh Walrath

Well, if you are expecting to see a seismic shift in the marketplace, then perhaps you should look elsewhere for the generation of a tsunami-like event.  The plume of information that we were given was not actually as extensive as we had hoped, but hopefully this information will not be subducted by an upthrust of new information from other movers and shakers in the industry.

Good, no?

September 28, 2013 | 11:14 AM - Posted by Goofus Maximus (not verified)

That was igneous! I mean ingenious!

September 29, 2013 | 02:59 AM - Posted by Anonymous (not verified)

Source: http://wccftech.com/battlefield-4-frostbite-3-support-amd-mantle-nvidia-...

Main points:

(1) Frostbite 3 will render natively with Mantel on Windows
(2) Full access to graphics hardware capabilities
(3) Lots of low-level optimizations
(4) Frostbite 3 will be used in 15+ AAA titles
(5) Mantle is a low-level high-performance console-style graphics API for PC
(6) Built by AMD in close collaboration with DICE/EA

September 30, 2013 | 11:09 PM - Posted by drbaltazar (not verified)

Am I reading wrong or amd still is ignoring the message signal interrupt (or its extended variant)lack?I understand for a thing like CCP eve the norm is one MSI per socket!and I know ms by default limit MSI to 1 per socket for driver activation of MSI!but can't amd supply a way for user to put proper value like a i7 2600 k shouldn't be at 1 MSI!it should be at 4 !how they expect people to have smooth gaming if their most basic foundation aren't properly set at gamer end!

October 6, 2013 | 11:59 AM - Posted by Anonymous (not verified)

So BF4 will support 8 cores, but with mantel no need for that many cores(processing power).
PR gimmick?
What I'm missing in this picture!?

Nvidia players need to buy an Intel 8 core cpu, to get full experience on BF4?(that will be a cheap upgrade, lol)

October 6, 2013 | 06:40 PM - Posted by drbaltazar (not verified)

I suspect nothing is as it appear.mm!I think I know what ms did!I ll build another AMD I ll know the what's what!hopefully I m wrong!because if I am right ?Intel and ms screwed me!

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Lines and paragraphs break automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <blockquote><p><br>
  • Web page addresses and e-mail addresses turn into links automatically.

More information about formatting options

By submitting this form, you accept the Mollom privacy policy.