gamerk316 :
^^ But again: You lose portability, even across vendors on the same platform. Portability and coding efficiency was the reason we stopped using hardcoded assembly for crying out loud!
Sure, if I coded to the metal, in pure assembly, violated every good programming practice, I'm sure I could double the performance of every application I write. Until the next hardware revision changes one of my assumptions (and it can be something REALLY trivial too) ends up costing me more performance then I gain. Devs HATE going back and re-optimizing for a different arch, and that's what API's like MANTEL force you to do every time the hardware changes.
Yeah, because support for Mantle on Xbone, PS4, and AMD GCN PCs is a porting nightmare when you're forced to support Nvidia PCs and older AMD GPUs! AMD has the majority of gaming systems running GCN.
Also, what is up with your second paragraph? You're entirely assuming that "low level" means that it's low level to the point where you're manually filling in registers by yourself and writing assembly?
The API exists to be much lower level than DX yet high enough level to account for differences in some architectures. It's sacrificing compatibility with nearly everything in exchange for less compatibility but more performance.
And your incessant nagging over "OMG THE ARCHITECTURE IS GOING TO CHANGE AND KILL MANTLE!!!" is completely invalid.
Hawaii is already a revision to GCN and Mantle did not break Mantle on GCN 1.0 cards. Your supposed "ZOMG HARDWARE REVISION OF DOOM GAME DEVS GONNA HAVE TO RECODE THEIR GAMES FOR THE NEW VERSION OF GCN!!!!" has already happened before Mantle was even released.
You seem kind of confused on how Mantle works. Let me explain APIs to you.
The reason why there's an API there is to allow implementations of the API to work for different hardware. So instead of Microsoft writing the sole implementation of the API via DirectX, you now have a way for AMD, Nvidia, and whoever else wants to make a compatible version of the libraries needed for the API for their own hardware.
And then you follow it up with another amazing wankerK post, where you somehow try and paint the fact that a first generation game on a brand new console isn't going to perform exceptional? Really buddy?
I'd love for you to show me the consoles that have been released in the past where release games looked as good as the games at the end of the console's lifecycle.
Devs HATE going back and re-optimizing for a different arch, and that's what API's like MANTEL force you to do every time the hardware changes.
I don't think you comprehend what Mantle and GCN are. Mantle is an ISA and GCN is the implementation. Do you know what else is an ISA? x86. And do you see game developers having to go back and re-optimize x86 code? Oh, you don't, because we have APIs and libraries which abstract.
DirectX is the CPU equivalent of Java where you have blobs that run in a contained environment with massive overhead, but it runs on nearly EVERY ISA out there. ARM, x86, MIPS, amd64, SPARC, Power, etc.
Mantle is the CPU equivalent of C, where libraries help maintain compatibility in the same ISA and previous versions and has much lower overhead, yet it only runs on one ISA (GCN) and if you want it on another ISA (Kepler, Maxwell, GT3, etc) you have to make your own compatible libraries.
What you're suggesting AMD is going to do which will cause developers to go back and re-optimize is the equivalent of Intel releasing Haswell and going "we added new instructions and changed the architecture, all existing assembly code and all existing x86 programs are no longer compatible and need to be tweaked!"