AMD Introduces "Mantle" API Initiative
hardwarezone.com.sg
hardwarezone.com.sg
- Collaboration between AMD and DICE/EA
- The Frostbite engine, used in Battlefield 4, "will use "Mantle" low-level API instead of DX11 on compatible Radeon GPUs."
- "Mantle enables 9x more draw calls per second than any other APIs by reducing CPU overhead - works with all GCN GPUs!"
Mantle is the direct result of a number of AAA game developers asking us for something like this because of several constraints they're experiencing with existing PC graphics APIs. Those developers want to get closer to the metal and able to achieve more with the GPU(s) on their PC without the API getting in the way of this effort. "More with more" is the term used by Raja and it couldn't be more spot on. AMD listened to developer feedback and entered this venture with Johan Andersson leading the charge. Johan has a passion for writing efficient code that can allow him to accomplish his technical vision and Mantle exists to serve this purpose.
Mantle is not for every developer. It is a low-level graphics API designed to drive the GPU in the most efficient manner. This level of access requires a bit more development effort than existing APIs to reap the rewards it provides.
AMD remains committed to support DirectX and OpenGL and to keep optimizing our drivers for those APIs. Mantle is an option that some developers may choose, but it does not affect those that wish to keep using existing APIs.
Some technical concerns are mentioned on this thread. The Mantle API has been in design and development for more than 2 years and rest assured we've had some time to think about the best way to address those (and loads of others).
More technical details about Mantle will be revealed in due course. Johan is a keynote speaker at the AMD Developer Summit (11-14 November, San Jose).
Nick - Gaming Engineering Manager, AMD
- No more drivers second guessing you.
- Speed
Cons:
- OpenGL/DirectX Drivers actually re-write the code stream and fix existing bugs from developers for specific game/versions. This is useful for the ecosystem because AMD/NVIDIA know more about 3D than most devs and how to be performant.
- It also really means NVIDIA will do the same if this catches on and now there will need to be at least two different supported implementations for anyone going down this route (prob amd + nvidia + {opengl, dx}). Changing out the 3d driver to be pluggable in a backend-agnostic way will be extremely hard/annoying to code around.
I hear that the Gallium3D project has done a substantial part of that work already:
http://www.bit-tech.net/hardware/graphics/2011/03/16/farewel...
How feasible that is in reality is of course up for question. And I doubt that nVidia would be willing to implement an AMD-controlled API.
Major coup for AMD. This is a CUDA that will affect all gamers.
major coup for AMD. This is a CUDA that will affect all gamers.
Coup indeed, a violent bloody struggle for the throne if it involves bypassing the existing graphics APIs.Mantle information starts at 02:26:40.
https://twitter.com/ID_AA_Carmack/status/383047595725037568
> AMD has an interesting opportunity with Mantle because of their dual console wins, but I doubt Sony and MS will be very helpful.
and
https://twitter.com/ID_AA_Carmack/status/383051142755663872
> Considering the boost Mantle could give to a steambox, MS and Sony may wind up being downright hostile to it.
And if the benefits of the api are so great as claimed than performance could go so high that for 1080p it will just don't matter if nVidia is slightly slower.
It is funny that Valve and AMD do for PC gaming what I claimed in 2001-2 MS should do - I called it game mode then. Unload everything but the TCP/IP stack and give all the resources to a game.
If you develop for PC you want to maximize market share so you need to ask if it's really worth supporting another graphics API for a performance boost on the #3 vendor.
DirectSound -> XAudio/XACT
DirectInput -> XInput
Etc.
Unless Mantle is a shedload easier to work with than OpenGL 3.x, I don't see it speeding the development of the Linux Unreal Engine 4 port. ;)
Can you convince me that Mantle is a substantially better or easier way of doing graphics programming than modern OpenGL?
AMD wants people to write code that will not run on Nvidia and Intel hardware. Nvidia has been doing the same thing for years with CUDA.
Not at all. OpenGL for a start is a huge state machine still. Far from how you program graphics on a gaming console.
the idea i got from the video is that mantle is a replacement for opengl and directx for "performance reasons".
i still agree with you though, this is just pure marketing to make people develop/buy AMD GPUs instead of something else.
Standards are great, and I'd love OpenGL drivers to be as fast as possible, but OpenGL being what it is, this API seems pretty interesting to me.
It's quite fascinating how many of the PS3's APIs are wrappers around established standards/libraries, almost as if they were deliberately crafted to require more porting effort from developers.
There's a significant amount of overhead in the existing OpenGL API, which currently can only be mitigated somewhat through vendor-specific extensions. But extensions alone aren't sufficient to address some of the serious issues that the OpenGL API has today.
OpenGL forces you to maintain a tremendous amount of state information that significantly increases overhead.
John Carmack and many others have explicitly mentioned this in past discussions.
While I'm horrified at the idea of revisiting the days of 3DFX glide and installing my own client ICD into a game driectory, if Mantle drives the OpenGL ARB to start seriously addressing those issues and increases competition, then I'm all for it.
[0] http://mjg59.dreamwidth.org/26254.html [1] http://mjg59.dreamwidth.org/27327.html [2] http://blog.martin-graesslin.com/blog/2013/05/mir-in-kubuntu...
Fabian Giesen: https://twtter.com/rygorous http://fgiesen.wordpress.com/ -- RAD Game Tools
Sean Barrett: https://twitter.com/nothings -- ex-Looking Glass, now RAD Game Tools
Brian Hook: https://twitter.com/GrumpyHook -- ex-id Software, now RAD Game Tools
Romain Guy: https://twitter.com/romainguy -- Google (Android)
John Carmack: https://twitter.com/ID_AA_Carmack -- id Software Founder / Occulus VR CTO
Johan Andersson: https://twitter.com/repi -- Technical Director on Frostbite Engine at DICE (Battlefield Games)
Dave Moore: https://twitter.com/dmmfix -- RAD Game Tools
Tom Forsyth: https://twitter.com/tom_forsyth -- ex-Valve (?), ex-Intel, now at Occulus
Graham Sellers: https://twitter.com/grahamsellers -- AMD
Matthäus G. Chajdas: https://twitter.com/NIV_Anteru
Christophe Riccio: https://twitter.com/g_truc -- ex-Imagination Technologies, ex-AMD ?, now indie?
Robert Menzel: https://twitter.com/renderpipeline
Morgan McGuire: https://twitter.com/CasualEffects