AMD’s Mantle finally emerges: Turns out it’s actually for boosting low-end … – ExtremeTech
This morning, AMD planned to launch its Mantle driver, with support for Battlefield 4 (that patch, from EA, should still be scheduled to go live at 4 AM EST) and with one technology demo: Star Swarm, by Oxide. Unfortunately, a last-minute delay by AMD due to driver issues has caused the company to hold back the shipping driver a little longer. So this is a preview of the performance data AMD has released thus far, with our own testing to follow tomorrow, featuring both BF4 and the Star Swarm demo.
It’s no exaggeration to say that Mantle is one of the most anticipated graphics products of the year. It’s potentially a new competitor to Microsoft’s DirectX API, it’s been used as justification for Nvidia’s GameWorks program by Nvidia users who feel AMD is the company tilting the playing field, and preemptively celebrated as one of the major next-generation gaming technologies for both the PC and console space. Therefore, before we dive into the performance testing, we need to say a few words about what Mantle is designed to do — and what it isn’t.
There are some key elements of Mantle that haven’t been communicated as clearly as they might have been. Mantle was announced at a GPU launch as an alternative to existing GPU APIs like OpenGL and DirectX. Most of the discussion of the API has therefore focused on how much Mantle would improve the performance of AMD’s various graphics cards by allowing for a vastly higher number of draw calls to be submitted per frame.
The problem with this focus is that it implies that Mantle makes a game run faster by making the GPU more efficient. In reality, Mantle is aimed at improving the performance and reducing the workload on the CPU side of the equation. That means Mantle’s performance improvements vis-à-vis DirectX 11 will depend on whether or not a game is CPU-bound or not.
According to AMD, these scenarios are actually quite common in gaming, as existing APIs have huge amounts of overhead and difficulty scaling out to multiple CPU cores. AMD expects Mantle to offer a principle benefit “for the majority of PC gamers that have entry-level and mid-range processors.” (emphasis added). This means Mantle’s greatest performance increases should be visible on APUs, particularly chips like the A10-7850K and even Kabini-based parts.
Mantle achieves its benefits by offering the following benefits over DirectX 11:
- Low validation and processing of API commands
- Explicit command buffer control
- Close to linear performance scaling from recording command buffers onto multiple CPU cores
- Reduced runtime shader compilation overhead
Here’s what that means, in aggregate: Mantle gives developers far more control over where command buffers are executed, how many cores are utilized for this process, and much better scaling when multiple cores are used. Some of you may recall that one of the features of Direct3D 11 was its support for multi-threaded rendering. According to AMD, while D3D does allow for multi-threaded rendering, the CPU scaling isn’t very good. One of the goals of Mantle is to allow for much better CPU scaling and improved overall performance.
Where Mantle matters
AMD explicitly states that Mantle isn’t necessarily going to improve performance much at the very top of the CPU/GPU performance stack. According to the company, “Mantle makes less of an impact in cases where high resolutions and ‘maximum detail’ settings are used, as these settings are likely to be maximally taxing GPU resources in a manner that is more difficult to improve at the API level (so-called GPU-bound scenarios).”
Mantle can still boost performance over DirectX 11 in such instances thanks to reduced command buffer submissions, asynchronous DMA queuing for data uploads, asynchronous compute capabilities, and advanced anti-aliasing techniques, but the company isn’t making big predictions for the category yet.
Next page: AMD’s performance claims…
- 1 of 2