Thursday, July 9th 2015
AMD Halts Optimizations for Mantle API
AMD has halted optimizations for its Mantle 3D graphics API, for current and future graphics cards. The cards will retain Mantle API support at the driver-level, to run existing Mantle applications, but will not receive any performance optimizations from AMD. Launched around 2013, Mantle had a short stint with AAA PC games, such as Battlefield 4, Thief, Sniper Elite III, and Star Citizen, offering noticeably higher performance than DirectX 11. The API improves the way the CPU-end of 3D graphics rendering is handled, particularly with today's multi-core/multi-threaded processors, bringing about significant increases to the number of draw-calls that can be parsed by a GPU.
AMD will now focus on DirectX 12 and Vulkan (OpenGL successor by Khronos Group). Why the company effectively killed its own 2-year old and promising 3D API is anyone's guess. We postulate that Mantle could have been used by AMD to steer Microsoft to introduce vital bare-metal optimizations it reserved for the console, to the PC ecosystem with DirectX 12. It appears to have served that purpose, and as if to hold up to its end of a bargain, AMD 'withdrew' Mantle. DirectX 12 will feature a super-efficient command-buffer that scales across any number of CPU cores, and will have huge increases in draw-calls over DirectX 11. The new API makes its official debut with Windows 10, later this month. AMD's Graphics CoreNext 1.1 and 1.2 GPUs support DirectX 12 (feature level 12_0), as do rival NVIDIA's "Maxwell" GPUs. The company will continue to nurture Mantle as an "innovation base" for its upcoming tech, such as LiquidVR.
Source:
PC Gamer
AMD will now focus on DirectX 12 and Vulkan (OpenGL successor by Khronos Group). Why the company effectively killed its own 2-year old and promising 3D API is anyone's guess. We postulate that Mantle could have been used by AMD to steer Microsoft to introduce vital bare-metal optimizations it reserved for the console, to the PC ecosystem with DirectX 12. It appears to have served that purpose, and as if to hold up to its end of a bargain, AMD 'withdrew' Mantle. DirectX 12 will feature a super-efficient command-buffer that scales across any number of CPU cores, and will have huge increases in draw-calls over DirectX 11. The new API makes its official debut with Windows 10, later this month. AMD's Graphics CoreNext 1.1 and 1.2 GPUs support DirectX 12 (feature level 12_0), as do rival NVIDIA's "Maxwell" GPUs. The company will continue to nurture Mantle as an "innovation base" for its upcoming tech, such as LiquidVR.
69 Comments on AMD Halts Optimizations for Mantle API
Oh, I think there might be a fair bit, actually.
wccftech.com/directx-12-directx-11-100fps-difference-unreleased-gpu/
Citation needed?
This Unity article goes into details:
blogs.unity3d.com/2014/07/03/metal-a-new-graphics-api-for-ios-8/
In short, Metal is designed (read: stripped down and features explicitly defined) specifically for iOS and iOS processors (e.g. A7). It would not work on any other hardware where Vulkan/Direct3D are flexible.
I'm sure when M-S (Xbox) was eyeballing AMD GCN (back 2010 or before) and how low-level API interacted with it; M-S told AMD "yes" that's the architecture we’re eager to engage. AMD said, for them to completely develop it they’d need employ it in all their discrete products. I think at that point there was the "gentleman's agreement" that Dx12 would get such optimizations. Although later pressure from Intel/Nvidia M-S started waning or even reneged going-forward with a "full-implementation" of what AMD had been told/envisioned. So AMD brought Mantle, and while not their direct intention it opened the idea that other operating systems might see the lock that has been DirectX opened... Others looking to come up the ladder and dethrone M-S took notice. M-S losing their DirectX hold would show the "Emperor has no clothes", what else does M-S Operating System really have as its draw...
I totally agree about the stagnant state of audio. DirectX is OK, but there are few alternatives. OpenAL is totally outdated. No. Still no. Mantle has been a source for initial inspiration for the programming interface, but the overall API and specs are new.
1) Vulkan is effectively Mantle 2.0 because it is such a major change. With Khoronos and its many partners, has been making something that is much better being that it is cross platform. AFAIK they were able to take a lot of the optimization work that AMD already did and reimplement it. I don't know how much sharing was going on but it's clear that Mantle work made it's way in.
2) Mantle is copy paste Directx12 in the sense that there's so many similarities. Even performance with early benchmarks with API testing has Mantle and Directx12 neck and neck. This would make Directx12 more of a Mantle v1.1 seeing that it supports more than just AMD, but doesn't go beyond that.
And this is old, but secondlly, Dx12/Vulkan shares a lot of code with Mantle. M$ didn't bother to change the name of Mantle's dll and just pushed them into Dx12 folder :D
For your information, Nvidia's driver implementation shares a lot of the code across APIs and platforms, in fact, Nvidia has implemented both Direct3D and OpenGL as their native API called Cg. So that doesn't mean the APIs are the same.
Async Shaders is supported since Kepler, as noted in the link.
So that's for Catalyst 15.7 but it doesn't seem to effect Windows 10. Also, TDR stands for Timeout Detection and Recovery
anandtech.com, "Fermi/Kepler/Maxwell 1 can only use a single graphics queue or their complement of compute queues, but not both at once – early implementations of HyperQ cannot be used in conjunction with graphics. Meanwhile Maxwell 2 has 32 queues, composed of 1 graphics queue and 31 compute queues (or 32 compute queues total in pure compute mode). So pre-Maxwell 2 GPUs have to either execute in serial or pre-empt to move tasks ahead of each other, which would indeed give AMD an advantage..."
Mantle has been short but has contributed much. Vulkan both DX12 and carry in them the best of Mantle. No one should put their hands to the head for purchasing a graph with the promise of Mantle, the best of Mantle are already included in the other two APIs.