gs-4151, developing thief with new amd technology, by jurjen katsman
Post on 13-Sep-2014
5.200 views
DESCRIPTION
Presentation GS-4151, Developing Thief with new AMD technology, by Jurjen Katsman at the AMD Developer Summit (APU13) Nov. 11-13, 2013.TRANSCRIPT
THE NIXXES PHILOSOPHY FULLY UTILIZING THE AVAILABLE HARDWARE
JURJEN KATSMAN NIXXES SOFTWARE BV
2 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
WHO ARE NIXXES?
! Specialized in cross plaKorm conversion. ! AcOve on PC plaKorm since 2000. ! Recently:
‒ Deus Ex: Human RevoluOon ‒ Hitman: AbsoluOon ‒ Tomb Raider ‒ Thief
! In all cases cooperated with AMD to improve Otle.
! Also long Ome console developer. ‒ Tomb Raider PS3. ‒ Currently working on unannounced PS4 Otle.
3 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
OVERVIEW
! The Nixxes Philosophy for PC gaming ! How PCs are different from consoles:
‒ More diverse hardware. ‒ AddiOonal features.
! Why Mantle? ‒ What is Mantle? (And what it isn‘t!) ‒ Common problems encountered when porOng to PC. ‒ … and how Mantle helps to solve them!
4 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
THE NIXXES PHILOSOPHY FOR PC GAMING
! How is the PC gamer different from a console gamer? ! Not at all?
‒ All want a great quality game! ‒ All want a great Story. ‒ All want great Gameplay. ‒ All want great Graphics.
! Or is he radically different?
5 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
THE NIXXES PHILOSOPHY FOR PC GAMING QUITE DIFFERENT!
6 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
THE NIXXES PHILOSOPHY FOR PC GAMING
! The PC Gamer… ‒ Invests heavily in new hardware. ‒ Is Technical!
‒ Likes to have opOons and to be able to Onker with things! ‒ Wants to see his hardware put to good use.
‒ A game should run beier on his $2000 machine compared to a $400 console.
! But every gamer has different hardware! ‒ Try to support the strengths of each! ‒ A niche within a niche.
‒ But it’s not always a lot of effort.
! They are the ones talking about your game!
WHO IS THE PC GAMER?
7 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
THE NIXXES PHILOSOPHY FOR PC GAMING APPLIED TO THIEF
8 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
THIEF
! A reboot of a classic PC game. ‒ Thief: The Dark Project by Looking Glass Studios (1998).
! Developed by Eidos Montreal. ! Nixxes responsible for PC version. ! Some great AMD technologies being used.
9 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
THE NIXXES PHILOSOPHY FOR PC GAMING
! AddiOonal PC features ‒ AMD TrueAudio ‒ Eyefinity ‒ 4K displays ‒ AMD HD3D ‒ Compute ‒ Crossfire
‒ Mantle
10 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
AMD TRUEAUDIO
! The return of audio acceleraOon hardware. ‒ Exclusive to latest AMD hardware.
! Great example of a high-‐end feature to reward PC gamers. ! High-‐quality audio processing effects.
‒ LocaOon specific reverb throughout enOre game. ! No CPU cost!
‒ Made possible by Wwise and TrueAudio. ! PC gamer gets immersive audio at negligible CPU cost.
11 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
EYEFINITY
! AMD pioneered mulO-‐monitor gaming setups. ! Hardly a niche anymore. ! CriOcal to support well.
‒ UI elements ‒ Game-‐visuals (large FOV)
‒ Large FOV can result in fish-‐eye effect… ‒ … which requires a lot of addiOonal draw calls to fix.
‒ In-‐game cinemaOcs. ‒ Pre-‐rendered cinemaOcs.
12 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
EYEFINITY MANY CONFIGURATIONS
13 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
EYEFINITY
! Great example of hardware variance on PC ! Think about how your game works best on all of those setups.
‒ Detect them using AMD ADL libraries. ! Peripheral vision!
‒ Great in a stealth game like Thief.
! But in some cases beier to handle it like one large monitor. ! Setup your code to allow you to easily test all modes without physical hardware changes! ‒ Makes development much easier.
! PC gamer will get to fully uOlize his cool monitor setup at its best!
14 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
4K GAMING
! 4K displays are the latest enhancements in displays. ! SOll very expensive!
‒ But expected to become affordable soon. ! Over 8 million pixels!
‒ Requires a lot of GPU power to render. ‒ Major investment for gamer, make sure he is rewarded!
! Can be represented as a 2 monitor Eyefinity setup to applicaOon. ‒ Don’t have your Eyefinity logic break it!
15 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
AMD HD3D STEREOSCOPIC 3D
! Stereo gaming. ‒ AcOve dedicated audience.
! Support HD3D! ‒ Makes it easy to support other hardware as well. ‒ Render two cameras with different projecOon matrices… ‒ … or do reprojecOon in a post process. ‒ Provide user control over stereo parameters.
! Remember to posiOon UI correctly. ! Watch out for screen-‐space effects.
16 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
AMD CROSSFIRE
! For the true hardcore gamer. ‒ Two or more GPUs
! 2 GPUs can double frame rate when used properly. ‒ Easy to support. ‒ Needs tesOng.
! Coordinate with AMD developer representaOve to get profiles setup. ! PC gamer will not be happy if his 2nd GPU goes unuOlized.
‒ Some techniques won’t work with AFR ‒ More opOons how to uOlize addiOonal GPUs would be nice
17 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
18 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
WHY WE USE MANTLE
! PC Gamers expect a AAA experience. ‒ High frame rate. ‒ High level of detail. ‒ All their hardware uOlized to good effect.
‒ All CPU cores uOlized. ‒ All GPUs busy all the Ome.
‒ Solid frame rate (no stalls or stuiers). ‒ Low latency.
19 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
WHY WE USE MANTLE
! Takes a lot of effort to achieve this using Direct3D ! D3D performance extremely unpredictable:
‒ Hidden shader compilaOon cost ‒ Can kick in at undefined Omes depending on driver.
‒ High and unpredictable resource creaOon cost. ‒ GPU resource memory management largely out of applicaOon control. ‒ Very high draw call overhead. ‒ Title specific driver opOmizaOons almost required. ‒ Drivers aiempt to opOmize using addiOonal threads.
‒ Out of applicaOon control. ‒ Takes CPU Ome away from other tasks.
! Recently hardware developed faster than DX.
20 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
21 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
WHY WE USE MANTLE
! Mantle is a new API ‒ Not Magic. ‒ Performance gains come from having a beier abstracOon layer… ‒ … not from having no abstracOon layer!
! Mantle is designed to fully leverage GCN. ‒ Not hardwired to GCN! ‒ Mantle does require a minimum feature level from hardware.
! Mantle improves performance on both, CPU and GPU. ! Not a simple drop in replacement for DirectX or OpenGL. ! Mantle does not have to be AMD specific.
‒ Showcases a model that we believe could work as a vendor-‐neutral API.
WHAT IS MANTLE?
22 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
WHY WE USE MANTLE
! Dispatching draw calls is very fast compared to DirectX. ! Command buffers can be created on mulOple threads. ‒ ApplicaOon can fully control mulO-‐threading. ‒ No hidden addiOonal threads from drivers. ‒ ApplicaOon decides how many render threads it needs.
‒ Virtually no limits. ! Command buffers can be re-‐used.
‒ D3D11 Deferred Contexts done right? ! PC gamer will be able to achieve higher frame-‐rate with a lower-‐spec CPU!
‒ Or games can get more complicated without losing performance. ‒ E.g. Increased draw distance.
LOW DRAW CALL OVERHEAD
23 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
WHY WE USE MANTLE
! GPU state is largely represented as a single pipeline. ‒ Can be a bit tricky since it doesn’t fit with current engine designs. ‒ Allows beier opOmizaOon which saves work for the developer.
! Large gains! ‒ All cost is on pipeline creaOon. ‒ Can be done on addiOonal threads. ‒ Can start with less opOmized pipelines. ‒ OpOmize over Ome using spare CPU cycles. ‒ Serialize to disk so we can start opOmized next Ome.
! PC gamer will get smooth gameplay! No unexpected stalls due to shader creaOon or state changes that trigger driver recompilaOon.
SHADER COMPILATION
24 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
WHY WE USE MANTLE
! Resource creaOon is lightweight. ‒ Minimal validaOon. ‒ Cost comes from memory allocaOon and streaming. ‒ Can be done on addiOonal threads. ‒ Full control over what happens when.
! Memory management is done by the applicaOon. ‒ Requires more work than on DirectX. ‒ Similar to developing on consoles… ‒ … but more scenarios need to be taken into account.
RESOURCE CREATION COST AND MEMORY MANAGEMENT
25 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
WHY WE USE MANTLE
! GPU compute power currently oren underuOlized. ‒ 5.6TFLOPS in R290X. Whow! ‒ ALU power rarely fully uOlized. ~50% idle not unusual.
! Other boilenecks oren present: ‒ Memory. ‒ Texture fetching. ‒ RasterisaOon.
! Asynchronous Compute allows us to more efficiently use all the power in the GPU.
! PC Gamer will get higher frame-‐rate in GPU limited cases. ‒ Or more expensive compute based effects possible with a low performance impact!
ASYNCHRONOUS COMPUTE
26 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
WHY WE USE MANTLE
! Mantle as an API is not something we use on the consoles. ‒ Mantle is exclusive to PC
‒ Right now. ‒ On consoles it makes sense to opOmize „down to the metal“. ‒ We spend a lot of Ome on consoles to develop best pracOces for GCN and CPU:
‒ Heavily mulOthreaded rendering. ‒ Asynchronous compute. ‒ That’s where the complexity is. ‒ This now translates easily to the PC.
THE CONSOLE CONNECTION
27 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
MANTLE
! Naïve Direct3D ports will not magically get much beier performance. ‒ You need to architect a render pipeline in a different way. Not emulate Direct3D.
! UOlizing all CPU cores is key. ! Avoid other CPU boilenecks on the engine side. ! You can render a lot more
‒ But you may also need to simulate a lot more.
! New boilenecks will show up. ‒ But most of those are under applicaOon control! ‒ Engine programmer is in control again!
CAVEATS
28 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
MANTLE
! Beier control over CPU threads. ! Much higher draw-‐call throughput possible. ! Lower API overhead. ! Beier GPU uOlizaOon.
SUMMARY
29 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
THE NIXXES PHILOSOPHY FOR PC GAMING
! The PC gaming community is a great group of consumers. ‒ They care deeply about their experience and invest in it. ‒ Reward them!
! Try to leverage all the unique PC technologies that they may have invested in.
! Mantle is a huge breakthrough to make this possible. ‒ Allow mid-‐end PCs to get performance equivalent to the consoles. ‒ Allow high-‐end PCs to truly shine.
! In Thief we intend to do exactly that!
SUMMARY
30 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
Thank you!
31 | THE NIXXES PHILOSOPHY | NOVEMBER 12, 2012 | CONFIDENTIAL
DISCLAIMER & ATTRIBUTION
The informaOon presented in this document is for informaOonal purposes only and may contain technical inaccuracies, omissions and typographical errors.
The informaOon 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, sorware changes, BIOS flashes, firmware upgrades, or the like. AMD assumes no obligaOon to update or otherwise correct or revise this informaOon. However, AMD reserves the right to revise this informaOon and to make changes from Ome to Ome to the content hereof without obligaOon of AMD to noOfy 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 combinaOons thereof are trademarks of Advanced Micro Devices, Inc. in the United States and/or other jurisdicOons. SPEC is a registered trademark of the Standard Performance EvaluaOon CorporaOon (SPEC). Other names are for informaOonal purposes only and may be trademarks of their respecOve owners.