This AMD technology presentation from the 2014 Game Developers Conference in San Francisco March 17-21 explains how Mantle features can enable developers to improve both CPU and GPU performance in their titles. Also view this and other presentations at http://developer.amd.com/resources/documentation-articles/conference-presentations/
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
Mantle - Introducing a new API for Graphics - AMD at GDC14
1. 1 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
MANTLE
INTRODUCING A NEW API FOR GRAPHICS
Guennadi Riguer
2. 2 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
MORE MANTLE @ GDC 2014
Rendering Battlefield 4 with Mantle
Johan Andersson, Technical Director, DICE/EA
Location: Room 2009, West Hall, Date: Wednesday, March 19, Time: 3:30pm-4:30pm
Nitrous & Mantle: Combining Efficient Engine Design with a Modern API
Dan Baker, Partner, Oxide Games
Tim Kipp, Partner, Oxide Games
Location: Room 2009, West Hall, Date: Wednesday, March 19, Time: 5:00pm-6:00pm
3. 3 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
Direct3D and the Future of Graphics APIs
Johan Andersson, Technical Director, DICE/EA
Dan Baker, Partner, Oxide Games
Dave Oldcorn, Software Engineering Fellow, AMD
Location: Room 3020, West Hall, Date: Thursday, March 20, 5:30pm-6:30pm
6. 6 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
CRYENGINE
Crytek‘s proprietary game development
solution CRYENGINE is used in all nine
Crytek studios across the globe.
CRYENGINE support for more than 70
Licensees in the U.S., Europe and Asia.
STUDIO NOTTINGHAM
STUDIO FRANKFURT AM MAIN
STUDIO BUDAPEST
STUDIO SOFIA
STUDIO KIEV
STUDIO ISTANBUL
STUDIO SHANGHAI
STUDIO SEOULSTUDIO AUSTIN
7. 1999
2002
2003
2004
Crytek is founded in Coburg, Germany.
The first CryENGINE® is born.TIMELINE
The first iteration of CryENGINE®.
Development of Far Cry.
CryENGINE® is showcased for the first time at GDC.
Far Cry is released.
Crytek partners with EA to develop its second game, Crysis.
CryENGINE® 2 debuts at GDC.
Sci-fi FPS Crysis is released and wins critical acclaim for its high quality graphics and gameplay.
2007
The new and improved CryENGINE® 3 is released. Crysis 2 is announced, again in partnership with EA. It
is Crytek’s first game for the PlayStation® 3 and Xbox 360, as well as the PC.2009
The new CRYENGINE is released for XBoxOne, PS4, Wii-U and PC
RYSE is released.20132013
2014
CRYENGINE adds full native Linux support
8. 8 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
CRYTEK & AMD
Over 10 years of collaboration
AMD and CRYTEK share an intense passion for games
and technology advancement .
Crytek has always been on the cutting edge of making
the most of the hardware available to deliver best
visuals possible to our gamers and the best
technology to our CRYENGINE developers.
Close collaboration with AMD’s developer relations,
driver, hardware architecture and HSA teams.
9. 9 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
CRYENGINE AND MANTLE
Getting closer to the metal
To achieve our vision of CG quality, real-time graphics this generation
we need lower-level access to the hardware on PC and console.
Working with AMD we look forward to greater flexibility and power
using Mantle with CRYENGINE – the first game engine to support
Mantle.
Finally the GPU and CPU are at our mercy…
10. 10 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
EXCITING FUTURE
Games are going to look even better!
We have pioneered effects in Ryse: Son Of Rome, but had to use
them sparingly.
In future these complex simulations and graphics effects will work
in tandem, and be much more widespread.
Thanks to our long term relationship with AMD we’ve been able
to see this vision together.
We are looking forward to showing the results of Mantle and
CRYENGINE very soon…
13. 13 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
WHAT IS MANTLE
Mantle is a new graphics API
–“Just right” abstraction level
–Modern API for modern GPUs
–Designed by developers for developers
What Mantle is not:
–It’s not quite “down to the metal” API
–It’s not some “magic” solution
20. 20 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
MEMORY MODEL
Memory heap 1 Memory heap 2 Memory heap N
. . .
Mem
Mem
Mem
Mem
Mem
Mem
Mem
Mem
21. 21 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
MEMORY MODEL
More general GPU memory access
Application controls almost all GPU memory
Page granularity allocations with control of heaps
–Sub-allocate for small resources from pools
Leverages GPU virtual address space
No direct CPU access
23. 23 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
MEMORY MANAGEMENT
Mantle is on top of OS video memory manager
Application tracks use of memory
–Provides memory references for GPU
Could get really smart, just like on consoles
–Use of memory pools is encouraged
–Reduces amount of memory tracking
36. 36 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
PIPELINES
Monolithic pipeline combines shaders and state
–Serialization to reduce compile time
Benefits
–Reduced runtime validation
–Shader linkage optimizations
–Forward looking abstraction model
37. 37 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
PIPELINE STATE
Some state is bundled with pipeline
–Affects shader compilation
–E.g. target formats, blending enable, topology, etc.
If abused, could lead to more pipelines
–States carefully selected to avoid this
Pipeline state has to match dynamic state
38. 38 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
GRAPHICS PIPELINE
IA VS HS DS
Tessellator
GS RS PS
DB
CB
Pipeline state
Index Data Resources TargetsDynamic state
39. 39 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
RESOURCE BINDING MODEL
Conventional binding is costly
Bindless has pros and cons
New binding model
–Best of both worlds
40. 40 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
DESCRIPTOR SETS
Pre-build data structures
–Containers for arrays of resource descriptors
–Can be nested
–Can be bound with an offset
Multiple bind points
Globally accessible by all pipeline shaders
41. 41 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
DESCRIPTOR SET HIERARCHY
Pipeline
Memory
Image
Memory
42. 42 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
PIPELINE RESOURCE MAPPING
Maps shader resources to descriptor sets
–Shader IL – linear resource namespaces (t#, s#, u#, …)
–Descriptor set – hierarchical structure
Matches descriptor set layout at execution time
–Relative to the bind point
–Separate per shader stage
Specified at pipeline creation
43. 43 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
BETTER EXPERIENCE WITH MANTLE
Improved CPU & GPU efficiency
–Increased application responsiveness
–Empowering lower spec systems
More predictable performance and behavior
Sharing PC optimizations with consoles
Opportunity for novel techniques
44. 44 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
MANTLE SDK
Stephan Hodes
45. 45 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
MANTLE SDK - BETA
Mantle Beta SDK developer website
–Opening in April
Web based access of Mantle SDK files,
samples and documentation
–Selected access only
–NDA required
–Contact AMD Developer
Relations to register interest
46. 46 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
MANTLE SDK - CONTENT
Core SDK
–Libraries
–Header files
–Extensions
–Shader IL Converter
Documentation
Samples
Developer Forum
48. 48 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
MANTLE SDK - CONTENT
Core SDK
Documentation
Samples
–Show how to use Mantle
–Demonstrate features
HLSL pipeline creation source
Developer Forum
49. 49 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
MANTLE SDK – TOOLS
Validation and profiling layer
GPU PerfStudio for Mantle
50. 50 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
MANTLE TOOLS
Gordon Selley
John Larkin
51. 51 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
GPU PERFSTUDIO2
AMD’s GPU performance and debugging tool for graphics
applications
Supports DirectX11® and OpenGL applications
Recently added support for Steam Linux®
Mantle support currently in development
–Demonstrate the API and GPU trace tools with a Mantle application
–Point out the main Mantle API features in the tool
52. 52 | AMD Gaming Evolved – GDC 2014 | March 19, 2014
GPU PERFSTUDIO2
Visit us at the AMD Booth 1024 South Hall:
– GPU PerfStudio2 demos with
Mantle
Steam Linux (OpenGL)
DirectX11 ®
– CodeXL
OpenCL™ and OpenGL Optimization and Debugging
–AMD is hiring