a brief primer on amd's mantle technology
TRANSCRIPT
8/13/2019 A Brief Primer on AMD's Mantle technology
http://slidepdf.com/reader/full/a-brief-primer-on-amds-mantle-technology 1/2
A BRIEF PRIMER ON MANTLE
Mantle has been many years in the making by AMD, but we were not alone in this effort! Mantle was
also directly shaped by the input we received from the greater game development community that has
long sought a low-level graphics API for PCs. We worked shoulder-to-shoulder with developers like DICE
and Oxide Games to create Mantle in the image of their needs: a streamlined, robust, efficient API for
modern graphics work. In fact, Mantle is the very first API designed directly by game developers for their
modern craft!
At the simplest level, Mantle is an Application Programming Interface (API), or a language that game
developers can use to write code that creates the beautiful graphics on your screen. In its current
iteration, the Mantle API uniquely leverages the hardware in the Graphics Core Next architecture (GCN)
of modern AMD Radeon™ GPUs for peak performance.
More broadly, Mantle is functionally similar to DirectX® and OpenGL, but Mantle is different in that it
was purpose-built as a lower level API. By “lower level,” it’s meant that the language of Mantle moreclosely matches the way modern graphics architectures (like AMD’s own GCN) are designed to execute
code. The primary benefit of a lower level API is a reduction in software bottlenecks, such as the time a
GPU and CPU must spend translating/understanding/reorganizing code on-the-fly before it can be
executed and presented to the user as graphics. Mantle comes in contrast to the “high level API,” which
offers broader compatibility with multiple GPU architectures, but does so at the expense of lower
performance and efficiency.
Before you proceed with performance analysis, however, we wanted to provide some new insight on
the design goals of the Mantle API.
DESIGN PRINCIPLES OF MANTLE
First and foremost, Mantle is primarily designed to improve performance in scenarios where the CPU is
the limiting factor (so-called “CPU-bound” cases); CPU-bound scenarios are legion in gaming, as existing
APIs have heavy validation overhead, along with difficulty scaling out to multiple CPU cores. In
addressing this common problem, Mantle enables a pronounced improvement for the majority of global
PC gamers that have entry-level and mid-range processors. Some of the techniques to achieve this
include:
Low-overhead 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
In turn, 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). While Mantle provides some
8/13/2019 A Brief Primer on AMD's Mantle technology
http://slidepdf.com/reader/full/a-brief-primer-on-amds-mantle-technology 2/2
built-in features to improve GPU-bound performance, gains in these cases are largely dependent on how
well Mantle features and optimizations are being utilized by the developer. Some of those features
include:
Reduction of command buffers submissions
Explicit control of resource compression, expands and synchronizations Asynchronous DMA queue for data uploads independent from the graphics engine
Asynchronous compute queue for overlapping of compute and graphics workloads
Data formats optimizations via flexible buffer/image access
Advanced Anti-Aliasing features for MSAA/EQAA optimizations
It’s also prudent to note that Mantle is still in the beta phase and may not reflect the full performance
we might be able to achieve through the optimization time we’ll be investing in the months ahead. And,
as developers are still familiarizing themselves with Mantle and its relationship to Graphics Core Next,
they may not have capitalized on all available opportunities for optimizations—but that will come with
time.
One such optimization is the approach to multi-GPU performance scaling, which now rests in the hands
of the game developer in the Mantle ecosystem. Developer control of multi-GPU performance
empowers them to design an optimal multi-GPU codebase that perfectly matches the approach their
rendering engine takes to graphics. Battlefield 4 is currently enabled with multi-GPU capabilities on
Mantle, but the Oxide Games StarSwarm demo will be enabled with these capabilities in a later build.
THE ROAD AHEAD
Throughout the months that have followed our October unveiling of Mantle, you have been patient and
kind to us as the Mantle consortium labored to make the first release the best it could possibly be.Concurrently, your support and coverage have been real and personal encouragement for every person
working on the API. While we can never truly repay your kindness with a piece of software, we hope
that it goes into the world with no uncertain amount of gratitude from us. We thank you so very deeply
for your support, and vow to bring an even more sensational experience in the months ahead!