Mantle is an API made in service to the game development industry, optimized to handle the performance challenges most often encountered by developers. A key challenge for these developers is engine performance that has been constrained by poor multi-core scaling or processing overhead, particularly in scenes with a large number of objects.
The performance benefits of Mantle are very important to industry titans like DICE and Crytek. Figures 1 and 2 reflect the efficiency gains that have captured their attention.
FIGURE 1: The performance of the Mantle graphics API is extracting untapped performance from existing hardware by removing bottlenecks in CPU-bound scenarios.
Figure 1 shows the built-in benchmark mode for Thief, which is designed to deliberately pressure systems with a high number of draw calls including characters, weather, carts, stalls, reflections, complex shadowing and many more objects.
Behind the scenes, each object represents a “draw call,” or a moment in time when the CPU and GPU must communicate to put something on the screen for your enjoyment. Historically, the quantity of draw calls—the image quality and detail provided to you—has reached a software limit before the hardware limit. The money you are investing in powerful hardware has been hamstrung by software inefficiencies!
Mantle is specifically designed to address this case by significantly raising the draw call limit by up to 900%.1 While increasing the draw call limit does not necessarily yield an equivalent jump in FPS, the data in figure 1 certainly demonstrates big performance gains can be achieved when you allow for better parallelization.
HARDCORE GAMERS: A LOOK AT MANTLE & MULTI-GPU
Moving on to multi-GPU platforms, we enter into an area where hardware has been even more constrained by software, as limited multithreading capabilities must now be stretched thin across two graphics cards hungry to get data and do work—even at 1600p!
Visiting the “Angry Sea” mission in Battlefield 4™ with this configuration demonstrates a large performance delta between DirectX® 11 and Mantle, even when one of those graphics cards is using a driver allegedly tuned to improve performance by reducing driver overhead in DirectX® 11.
FIGURE 2: The data reveals that Mantle better equips a processor to feed a hungry dual-GPU configuration than DirectX® 11.
We would be remiss if we didn’t put a fine point on this and remind you that this performance disparity represents a squandering of the money you invested in your hardware. Mantle isn’t just a way to increase detail or performance--it’s a return on your investment as a gamer.
ON THE TOPIC OF ROI
Another interesting trend arises from the data, in that the low-overhead benefits of Mantle are evidently unlocking the true performance of processors across the board, allowing contenders at very different prices to churn out approximately equal performance regardless of their retail cost. The importance of this trend, when extrapolated to an industry now focused on low-overhead APIs, cannot be understated.
FIGURE 3: The AMD FX-8350 is $850.99 less expensive than the Intel Core-i7 4960X, but it’s faster in Thief, a game equipped with the Mantle graphics API.2
Consider the implications of a new landscape where the budgetary choices you make for your PC have been democratized by software that totally deemphasizes the importance of your processor decision (and, by extension, the corresponding motherboard).
What would that do to the cost of your system when low-overhead APIs like Mantle become the norm? Would you purchase a less costly CPU and a more powerful graphics card instead? Would you simply reduce the cost of your system, perhaps by several hundred dollars? Little has been discussed on this topic, but we invite you to consider it in greater detail in your communities and articles.
Robert Hallock does Technical Communications for Desktop Graphics at AMD. His postings are his own opinions and may not represent AMD’s positions, strategies or opinions. Links to third party sites, and references to third party trademarks, are provided for convenience and illustrative purposes only. Unless explicitly stated, AMD is not responsible for the contents of such links, and no third party endorsement of AMD or any of its products is implied.
Testing performed at AMD Labs by isolating API CPU performance. “Draw” defined as the minimum unique entity that can be rendered by an API draw command and a typical unique state associated with it. Mantle performed an average draw of 0.36 microseconds over two CPU threads. DirectX 11 performed an average draw of 3.89 microseconds over a single API thread and a single driver thread. Mantle results discounted by 20% for conservatism (i.e. 3.89/0.36/1.2 = 9.00). Test configuration: Intel Core 2 CPU X9650 at 3GHz, 4 GB of PC2-6400 RAM, AMD Radeon HD 7970 video card with 3 GB VRAM. [MAN-36]
Pricing data obtained from Newegg.com on 05 May, 2014. Intel Core i7-4960X ($1049.99). AMD FX-8350 ($199.99).
*Originally posted by Robert Hallock in AMD Gaming on May 28, 2014 12:03:10 PM