Mantle (API)

From Wikipedia, the free encyclopedia

Template:Short description

Page Module:Infobox/styles.css has no content.

Mantle
[[Programmer|DeveloperTemplate:Pluralize from text]]AMD, DICE[1]
Initial releaseSeptember 25, 2013; 12 years ago (2013-09-25)[2]
Template:Infobox software/simple
Operating systemWindows
Platformx86 and x86-64
SuccessorVulkan
LicenseProprietary, freeware
Websitewww.amd.com/mantle

Script error: No such module "Check for conflicting parameters".

Mantle was a low-overhead rendering API targeted at 3D video games.[3] AMD originally developed Mantle in cooperation with DICE, starting in 2013.[1] Mantle was designed as an alternative to Direct3D and OpenGL, primarily for use on personal computers. In 2015, Mantle's public development was suspended and in 2019 completely discontinued, as DirectX 12 and the Mantle-derived Vulkan rose in popularity.[4][5][6][7]

Overview

The draw call improvements of Mantle help alleviate cases where the CPU is the bottleneck. The design goals of Mantle are to allow games and applications to utilize the CPUs and GPUs more efficiently, eliminate CPU bottlenecks by reducing API validation overhead and allowing more effective scaling on multiple CPU cores, provide faster draw routines, and allow greater control over the graphics pipeline by eliminating certain aspects of hardware abstraction inherent to both current prevailing graphics APIs OpenGL and Direct3D.[8]

CPU-bound scenarios

With a basic implementation, Mantle was designed to improve performance in scenarios where the CPU is the limiting factor:

  • Low-overhead validation and processing of API commands;[9][10]
  • Explicit command buffer control;[9]
  • Close to linear performance scaling from reordering command buffers onto multiple CPU cores;[9]
  • Reduced runtime shader compilation overhead;[9]
  • AMD claims that Mantle can generate up to 9 times more draw calls per second than comparable APIs by reducing CPU overhead;[11]
  • Multithreaded parallel CPU rendering support for at least 8 cores.[12]

GPU-bound scenarios

Mantle was also designed to improve situations where high resolutions and "maximum detail" settings are used, although to a somewhat lesser degree, as these settings tax GPU resources in a way that is more difficult to improve at the API level. While Mantle provides some 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 game engine. Some of those features include:[13][14]

  • 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[3][9]
  • Native multi-GPU support[3]

Benchmarks

  • Performance superior to Direct3D 11[15]
  • Improved performance in Battlefield 4[16][17][18] and up to 319% faster in the Star Swarm demo in single GPU configuration[19][20][21] in extremely CPU-limited situations.

Other claims

Page Module:Message box/ambox.css has no content.

  • Easier to port from Mantle to Direct3D 12 than from Direct3D 11 to Direct3D 12[22]
  • At GDC 14 Oxide Games employee Dan Baker stated that Mantle would address fundamental development challenges that could not be addressed by a retrofit of an existing API. It is hard to optimize for the graphics device driver.[23][24][25]
  • At the AMD Developer Summit (APU) in November 2013 Johan Andersson, technical director of the Frostbite engine at DICE praised Mantle for making development easier and enabling developers to innovate.[26]
  • Mantle targets 100K[27]
  • Monolithic Pipeline[3]
  • Pipeline saving and loading[22]
  • Hybrid Resource Model
  • Generalized Resources
  • Control over resource preparation
  • Dynamic flow control without CPU intervention
  • Direct GPU control
  • Reduced runtime shader compilation overhead
  • Better control over the hardware.[11]
  • "All hardware capabilities are exposed through the API."[11]
  • Reduction of command buffer submissions
  • Data formats optimizations via flexible buffer/image access
  • Explicit control of resource compression, expansion, and synchronization
  • Asynchronous DMA queue for data uploads independent from the graphics engine
  • Asynchronous compute queue for overlapping of compute and graphics workloads
  • New rendering techniques

Support

The Mantle API was only available as part of AMD Catalyst prior to 19.5.1, which was available for Microsoft Windows. AMD promised to support their Mantle API only for their graphics cards and APUs which are based on their Graphics Core Next microarchitecture, but not older products based on the TeraScale microarchitecture.[28] As of July 2014 the implementation of the Mantle API was available for the following hardware:[citation needed]

  • certain Radeon HD 7000 series GPUs
  • certain Radeon HD 8000 series GPUs
  • certain AMD Radeon Rx 200 series GPUs ("R7" and "R9")
  • all Steamroller-based "Kaveri" APUs: AMD A10-7000 series and AMD A8-7000 series
  • all Jaguar-based "Kabini" and "Temash" APUs: AMD E1-2000 series, E2-3000 series, A4-1200 series, A4-1350, A4-5000 series, A6-1450, A6-5200, Sempron 2650, Sempron 3850, Athlon 5150, Athlon 5350, etc.
  • all Puma-based "Beema" and "Mullins" APUs: E1 Micro-6200T, A4 Micro-6400T, A10 Micro-6700T, E1-6010, E2-6110, A4-6210, A6-6310, etc.

Mantle was originally planned to be released on other platforms than Windows, including Linux, but it never happened.[29][30]

While the API was officially discontinued, Clément Guérin[31] started a Mantle to Vulkan translation layer called GRVK[32] in mid 2020. This allows the API and ultimately the games to live on even without Mantle supporting graphic drivers.

Game engines

Script error: No such module "Labelled list hatnote".

Video games

Script error: No such module "Labelled list hatnote".

Originally planned

Similar technologies

A set of recent OpenGL 4.4 features, coupled with bindless texturing as an extension, can also substantially reduce driver overhead. This approach, termed by the Khronos Group as "AZDO" (Approaching Zero Driver Overhead) has been shown to achieve substantial performance improvements, approaching those stated for Mantle.[42][43] Nvidia has extended OpenGL with a number of features that further reduce driver overhead.[44]

After details about DirectX 12 were made public, AMD has stated that they fully intend to support DirectX 12, but at the same time they claimed that Mantle "will [still] do some things faster." They have also claimed that due to similarities in the design philosophy of the two APIs, porting games from Mantle to DirectX 12 will be relatively straightforward,[45] and easier than porting from DirectX 11 to 12.[22]

Ultimately, AMD discontinued Mantle as a game API due to the similar aims of DirectX 12 and glNext (later renamed Vulkan).[4][5] AMD donated the Mantle API to the Khronos group, which developed it into the Vulkan API.[46][47][48][49][50][51]

Comments

Page Template:Blockquote/styles.css has no content.

Much of the work that drivers used to do on an application’s behalf is now the responsibility of the game engine. ... It also means that this work, which must still be done, is done by someone with considerably more information. Because the engine knows exactly what it will do and how it will do it, it is able to make design decisions that drivers could not.

— Firaxis on 2014-04-28, Why We Went With Mantle

Recording and FPS overlay software

PC gamers and professionals traditionally used programs such as Fraps and Bandicam to record gameplay, measure game FPS and display FPS overlay, but because Mantle is new, most traditional recording software does not work with new titles while using the new API.

In partnership with AMD, PC gaming community and game recording software maker Raptr have overhauled their client and have since re-branded it as the AMD Gaming Evolved client in conjunction with AMD's Gaming Evolved initiative in the PC gaming space. Out of the partnership, players who install and use the client while in-game can earn points to spend on digital items like games or computer hardware, chat with friends, keep their game library optimized, check for graphics card driver updates, stream their games to Twitch and record gameplay of their own with a built-in GVR, a feature similar to Nvidia Shadowplay software in its own GeForce Experience software that allows users to define a custom buffer length in their game for retroactive game recording with the push of a button so no moment gets missed and users typically do not need expensive hard drive setups to record to. In late 2014, AMD updated the client to support the recording and streaming of titles using Mantle.[52] As of its initial update into the client, the Gaming Evolved software was the only software to officially support the recording and streaming of Mantle enabled games.

Besides Raptr, D3DGear[53] was the only other commercial game recording software that supported Mantle API based games.

See also

  • Direct3D 12 – low-level API from Microsoft
  • Vulkan – low-overhead API from Khronos, developed from Mantle
  • Glide – another low-level API, by the now defunct 3dfx
  • GNM – low-level API of the PlayStation 4
  • GNMX – high-level API of the PlayStation 4
  • Metal – low-level API for Apple iOS and macOS

References

Page Template:Reflist/styles.css has no content.

  1. ^ a b Page Module:Citation/CS1/styles.css has no content.Altavilla, Dave (2013-09-30). "AMD and DICE To Co-Develop Console Style API For Radeon Graphics". Forbes. Retrieved 2014-07-14.
  2. ^ Page Module:Citation/CS1/styles.css has no content."AMD Radeon R9 and R7 Series Graphics Cards Usher in a New Era of Gaming Realism". AMD. Retrieved 22 June 2021.
  3. ^ a b c d Page Module:Citation/CS1/styles.css has no content."Mantle WhitePaper" (PDF). AMD.
  4. ^ a b Page Module:Citation/CS1/styles.css has no content.Smith, Ryan (2 March 2015). "AMD Lays Out Future of Mantle". Anandtech.com. Archived from the original on March 4, 2015. Retrieved 28 June 2016.
  5. ^ a b Page Module:Citation/CS1/styles.css has no content."One of Mantle's Futures: Vulkan | AMD Blogs".
  6. ^ Page Module:Citation/CS1/styles.css has no content."AMD's Revolutionary Mantle Graphics API". Retrieved 2017-10-04.
  7. ^ Page Module:Citation/CS1/styles.css has no content."Farewell Mantle… AMD has ended all support for DirectX 12's API inspiration". 14 May 2019. Retrieved 2019-05-15.
  8. ^ Page Module:Citation/CS1/styles.css has no content."Some Mantle benchmarks by AMD". AMD. 2014-02-01.
  9. ^ a b c d e Page Module:Citation/CS1/styles.css has no content."Mantle 101". AMD. 2014-05-28. Archived from the original on 2014-05-30.
  10. ^ Page Module:Citation/CS1/styles.css has no content."AMD Gaming". 2014-02-01.
  11. ^ a b c d Page Module:Citation/CS1/styles.css has no content."AMD Livestream at GPU 14 Tech Days". 2013. Archived from the original on September 27, 2013.
  12. ^ Page Module:Citation/CS1/styles.css has no content.Smith, Ryan (Sep 26, 2013). "Understanding AMD's Mantle: A Low-Level Graphics API For GCN". anandtech.com. AnandTech. Retrieved Oct 1, 2013.{{cite web}}: CS1 maint: deprecated archival service (link)
  13. ^ Page Module:Citation/CS1/styles.css has no content."The Next Generation of Graphics APIs". Oxide Games. 2014-05-21. Archived from the original on 2016-03-04. Retrieved 2014-07-18.
  14. ^ Page Module:Citation/CS1/styles.css has no content."The Race to the Metal". Josh Barczak. 2014-05-23.
  15. ^ Page Module:Citation/CS1/styles.css has no content."The performance of Mantle". AMD. 2014-05-28.
  16. ^ Page Module:Citation/CS1/styles.css has no content."AMD Mantle API Performance Analysis With Radeon R7 260X, R9 270X, R9 280X". 2 February 2014.
  17. ^ Page Module:Citation/CS1/styles.css has no content."Tłumacz Google". February 2014.
  18. ^ Page Module:Citation/CS1/styles.css has no content."AMD claim performance boosts of up to 45% using Mantle over DirectX | PCGamesN". 6 January 2014.
  19. ^ Page Module:Citation/CS1/styles.css has no content."AMD Mantle Powered Flagship Nitrous Engine "Star Swarm Benchmark" Released on Steam". 31 January 2014.
  20. ^ Page Module:Citation/CS1/styles.css has no content."Page 2 - AMD's Mantle benchmarked: The biggest innovation in gaming since DirectX 9 | ExtremeTech".
  21. ^ Page Module:Citation/CS1/styles.css has no content."AMD releases Mantle, shares performance numbers".
  22. ^ a b c Page Module:Citation/CS1/styles.css has no content."Mantle: the start of a low-overhead future". AMD. 2014-05-28.
  23. ^ Page Module:Citation/CS1/styles.css has no content."Combining Efficient Engine Design with a modern API". 2014-03-20.
  24. ^ Page Module:Citation/CS1/styles.css has no content."Mantle in the words of game developers". AMD. 2014-05-28.
  25. ^ Page Module:Citation/CS1/styles.css has no content."How Mantle changes the game" (PDF). 2013-11-21. Archived from the original (PDF) on 2014-08-11. Retrieved 2014-07-18.
  26. ^ Page Module:Citation/CS1/styles.css has no content."Mantle for Developers (by Johan Andersson, DICE)". 2013-11-21.
  27. ^ Page Module:Citation/CS1/styles.css has no content."Empowering 3D Graphics Innovation". 2013-11-21.
  28. ^ Page Module:Citation/CS1/styles.css has no content.Smith, Ryan (26 September 2013). "Understanding AMD's Mantle". Anandtech.com. Retrieved 28 June 2016.{{cite news}}: CS1 maint: deprecated archival service (link)
  29. ^ Page Module:Citation/CS1/styles.css has no content."AMD wants to improve gaming in Linux and Steam boxes with its Mantle tools". 2014-06-18.
  30. ^ Page Module:Citation/CS1/styles.css has no content."Linux support isn't ruled out completely". Phoronix. 2014-05-31.
  31. ^ Page Module:Citation/CS1/styles.css has no content."libcg on Github". GitHub.
  32. ^ Page Module:Citation/CS1/styles.css has no content."GRVK on GitHub". GitHub.
  33. ^ Page Module:Citation/CS1/styles.css has no content."AMD Mantle support is headed to another game engine". 14 January 2022.
  34. ^ Page Module:Citation/CS1/styles.css has no content.Parrish, Kevin (Sep 25, 2013). "AMD's Mantle API Gives Devs Direct Hardware Control". tomshardware.com. Tom's Hardware. Retrieved Oct 1, 2013.
  35. ^ Page Module:Citation/CS1/styles.css has no content."Star Swarm Stress Test on Steam".
  36. ^ Page Module:Citation/CS1/styles.css has no content."Mantle Renderer now available in Battlefield 4".
  37. ^ Page Module:Citation/CS1/styles.css has no content."Mantle Takes to the Stars with Sid Meier's Civilization: Beyond Earth".
  38. ^ Page Module:Citation/CS1/styles.css has no content."Sniper Elite 3 to tap AMD's Mantle API". 21 November 2013.
  39. ^ Page Module:Citation/CS1/styles.css has no content."AMD's Revolutionary Mantle Graphics API Adopted by Industry Leading Game Developers Cloud Imperium, Eidos-Montréal and Oxide". AMD. NYSE: AMD. November 4, 2013. Archived from the original on 22 February 2014. Retrieved November 5, 2013.
  40. ^ Page Module:Citation/CS1/styles.css has no content."Star Citizen to Include Mantle Support". Transmission. Cloud Imperium Games. 5 November 2013. Retrieved 6 November 2013.
  41. ^ Page Module:Citation/CS1/styles.css has no content."Mantle to power 15 Frostbite games; DICE calls for multi-vendor support - The Tech Report". 13 November 2013.
  42. ^ Page Module:Citation/CS1/styles.css has no content."OpenGL Efficiency: AZDO" (PDF). Khronos Group. March 2014. Retrieved 2020-10-07.
  43. ^ Page Module:Citation/CS1/styles.css has no content."Beyond Porting: How Modern OpenGL Can Radically Reduce Driver Overhead". YouTube. 2014-02-11. Retrieved 2020-10-07.
  44. ^ Page Module:Citation/CS1/styles.css has no content."OpenGL NVIDIA Command-List: Approaching Zero Driver Overhead". 2014-12-04. Retrieved 2020-10-07.
  45. ^ Page Module:Citation/CS1/styles.css has no content."A closer look at DirectX 12". The Tech Report. 2014-03-30. Retrieved 2020-10-07.
  46. ^ Page Module:Citation/CS1/styles.css has no content."More on Vulkan and SPIR - V: The future of high-performance graphics" (PDF). Khronos Group. p. 10. Retrieved 27 June 2015. Thanks AMD!
  47. ^ Page Module:Citation/CS1/styles.css has no content.Mah Ung, Gordon (6 March 2015). "Mantle is a Vulkan: AMD's dead graphics API rises from the ashes in OpenGL's successor". PCWorld.
  48. ^ Page Module:Citation/CS1/styles.css has no content."AMD Gaming: One of Mantle's Futures: Vulkan | AMD Blogs". Community.amd.com. Retrieved 2015-03-05.
  49. ^ Page Module:Citation/CS1/styles.css has no content.Hruska, Joel (4 March 2015). "Not dead yet: AMD's Mantle powers new Vulkan API, VR efforts". ExtremeTech. Retrieved 2015-03-05.
  50. ^ Page Module:Citation/CS1/styles.css has no content."AMD's Mantle Lives On In Vulkan - Lays The Foundation For The Next OpenGL". Wccftech.com. 2014-06-20. Retrieved 2020-10-07.
  51. ^ Page Module:Citation/CS1/styles.css has no content.Kirsch, Nathan (2015-03-03). "Is AMD Mantle Dead As We Have Known It? Vulcan API Uses Mantle Technology for OpenGL". Legit Reviews. Retrieved 2020-10-07.
  52. ^ Page Module:Citation/CS1/styles.css has no content."AMD Gaming Evolved Now Supports Mantle".
  53. ^ Page Module:Citation/CS1/styles.css has no content."D3DGear Mantle Recording Software".

Lua error in package.lua at line 80: module 'Module:Navbox/configuration' not found.