GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

35
MANTLE: EMPOWERING 3D GRAPHICS INNOVATION GUENNADI RIGUER MANTLE CHIEF ARCHITECT BRIAN BENNETT MANTLE ARCHITECT

description

Presentation GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett, at the AMD Developer Summit (APU13) November 11-13, 2013.

Transcript of GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

Page 1: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

MANTLE: EMPOWERING 3D GRAPHICS INNOVATION

GUENNADI RIGUER – MANTLE CHIEF ARCHITECT BRIAN BENNETT – MANTLE ARCHITECT

Page 2: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

2 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

What Is Mantle? Mantle is innovation

Just the right abstraction level

Feature set for modern GPUs

Page 3: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

3 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

Why Mantle? Developers want it

Performance and control

Excitement and innovation

Page 4: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

4 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

Mantle isn’t for Everyone Do you care about performance?

Do you want control?

Do you care about bridging multiple platforms?

Page 5: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

5 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

Solutions for Performance Designed for GPU efficiency

Unlocking new performance features

“Small batch” problem is history

Page 6: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

6 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

“Small batch” Today

3-5K

Page 7: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

7 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

Amazing Developers

3-5K 10K

Page 8: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

8 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

Mantle Target

10K

100K

Page 9: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

9 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

Current Issues API overhead

Lack of proper threading

Memory management

Lack of direct GPU control

Page 10: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

10 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

Design Philosophy

Simplicity Features

Performance

Page 11: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

11 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

API Design Fundamentals Pre-build and reuse data

Control memory management

Control command generation and execution

Application controls rendering

Page 12: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

12 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

Putting Developer in the Driver Seat

Page 13: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

13 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

… or in the Driver Developer Seat

Image courtesy of Brian Bennett

Page 14: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

Mantle Core Features

Page 15: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

15 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

Execution Model

Graphics

Compute

DMA

GPU

. . .

Page 16: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

16 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

Execution Model

Graphics

Compute

DMA

GPU

. . .

Queues

Page 17: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

17 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

Execution Model

Graphics

Compute

DMA

GPU

. . .

Queues Application

App thread

App thread

App thread

App thread

App thread

Page 18: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

18 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

Decoupled GPU Memory

Memory

State

API object

Other APIs Mantle

Memory

State

API object

Page 19: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

19 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

Memory Management Application controls memory

… both GPU and CPU

Leverages GPU Memory Virtualization

Much more general than other APIs

Page 20: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

20 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

GPU Page Table Remapping

Page N

Page 1

Page 0

GPU Virtual Address space Remapping table

“Virtual”

allocation

“Real”

allocation

Page 21: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

21 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

Monolithic Pipelines

Graphics pipeline example

IA VS HS DS

Tessellator

GS RS PS

DB

CB

Pipeline state

Index Data Resources Targets Dynamic state

Page 22: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

22 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

Generalized Resources Other APIs

Index buffers

Vertex buffers

Constant buffers

Staging resources

Textures

UAVs

Texture Arrays

. . .

Memory

Mantle

Images

Page 23: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

23 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

New Binding Model

Best of traditional and bindless paradigms

Pipeline Memory

Image

Memory

Image

Page 24: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

24 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

Resource Preparation

Application manages resource/memory state

Application manages hazards (e.g. RAW, WAW)

Represents translation of usage model

Page 25: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

25 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

Preparation Example

Render target Shader resource

Cache flush

Decompression

. . .

Page 26: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

26 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

… and Much More

Pipeline

serialization

Advanced MSAA

features

Advanced

control flow

Page 27: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

Wait, There Is More…

Page 28: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

28 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

Multi-device

Application

App thread

App thread

App thread

App thread

App thread

Graphics

Compute

DMA

GPU

. . .

Page 29: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

29 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

Multi-device

Application

App thread

App thread

App thread

App thread

App thread

Graphics

Compute

DMA

GPU 1

. . .

Graphics

Compute

DMA

GPU 0

. . .

Page 30: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

30 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

CrossFire Unleashed Going beyond AFR rendering

Flexible workload scaling and partitioning

Asymmetric configurations (APU+dGPU)

Unlocking novel usage scenarios

Page 31: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

31 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

Debugging & Tools

Tools are very important

Built-in debugging and validation

Extensive multi-level checking

Controls to stress-test application

Page 32: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

32 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

Summary of Benefits Empowering lower spec systems

More predictable performance and behavior

Sharing PC optimizations with next gen consoles

Opportunity for novel techniques

Page 33: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

33 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

Want to Know More?

Beta program starts soon

Talk to AMD ISV Team

See more cool presentations today

Page 34: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

34 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

Big thanks to

Mantle dev team!

Page 35: GS-4112, Mantle: Empowering 3D Graphics Innovation, by Guennadi Riguer and Brian Bennett

35 | MANTLE: EMPOWERING 3D GRAPHICS INNOVATION | NOVEMBER 19, 2013 | CONFIDENTIAL

DISCLAIMER & ATTRIBUTION

The information presented in this document is for informational purposes only and may contain technical inaccuracies, omissions and typographical errors.

The information contained herein is subject to change and may be rendered inaccurate for many reasons, including but not limited to product and roadmap changes, component and motherboard version changes, new model and/or product releases, product differences between differing manufacturers, software changes, BIOS flashes, firmware upgrades, or the like. AMD assumes no obligation to update or otherwise correct or revise this information. However, AMD reserves the right to revise this information and to make changes from time to time to the content hereof without obligation of AMD to notify any person of such revisions or changes.

AMD MAKES NO REPRESENTATIONS OR WARRANTIES WITH RESPECT TO THE CONTENTS HEREOF AND ASSUMES NO RESPONSIBILITY FOR ANY INACCURACIES, ERRORS OR OMISSIONS THAT MAY APPEAR IN THIS INFORMATION.

AMD SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE. IN NO EVENT WILL AMD BE LIABLE TO ANY PERSON FOR ANY DIRECT, INDIRECT, SPECIAL OR OTHER CONSEQUENTIAL DAMAGES ARISING FROM THE USE OF ANY INFORMATION CONTAINED HEREIN, EVEN IF AMD IS EXPRESSLY ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

ATTRIBUTION

© 2013 Advanced Micro Devices, Inc. All rights reserved. AMD, the AMD Arrow logo and combinations thereof are trademarks of Advanced Micro Devices, Inc. in the United States and/or other jurisdictions.