This is not for performance. OpenGL has very low overhead, and already allows you to "directly tap into the hardware" and "fully exploit the capabilities of modern GPUs".
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.
Follow some of the top-end OpenGL developers on Twitter sometime; you'll change your tune quickly.
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.
It was my understanding that those involved with or in the know about both Wayland and Mir felt that Mir is a project in a very early state of development [0][1] that was started for the wrong reasons [2]. Could you point me to a knowledgeable person who doesn't work for Canonical who mentions that some significant good idea(s) from Mir worked their way into Wayland? :)
What, and people haven't been ragging on and even trying to replace OpenGL for years? Everyone used the GPU-specific API rather than OpenGL on PS3 to make it harder to port their code, not to get the maximum possible performance? The "leading game developers" that allegedly inspired Mantle aren't going to show?
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.
libgcm is pretty much just OpenGL with a few Sony specific extensions - plus you have to use their headers which use macros to build the command lists, probably pulled right out of NVidia's driver code.
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.
OpenGL can introduce a lot of overhead, especially when moving data back and forth between CPU and GPU. As just one example, OpenGL gives you no control over texture swizzling, which can be a serious performance issue during texture upload.
That's sort of the fault of the hardware vendors though for not proposing any viable extensions that expose texture swizzling. Why would it get any better with a new API?
well CUDA is really for general purpose development on GPUs and to be fair if i recall correctly CUDA appeared before there were standard ways to to GPGPU (like openCL and directcompute).
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.
There is a opportunity for performance improvements by making the API calls more practical for the hardware and unifying the design. Comparing an API at this level to OpenGL API exposes your ignorance.
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.