Civilization: Beyond Earth the next Mantle game.

Page 9 - Seeking answers? Join the AnandTech community: where nearly half-a-million members share solutions and discuss the latest tech.

3DVagabond

Lifer
Aug 10, 2009
11,951
204
106
Nick Thibieroz (Worldwide ISV Gaming Engineering Manager at AMD) tweeted:

fps matters a lot in Civ 5 engine. Try end-game at high res. Thousands of models rendered per-frame.

Mantle saves CPU time which could be re-used elsewhere (e.g. AI). It's too early to comment on this though.

So, it seems that using Mantle could allow more CPU time for AI. Time will tell, though.
 

3DVagabond

Lifer
Aug 10, 2009
11,951
204
106
Yes, that is what we are basically talking about. Will it? As you said, time will tell.

He is stating though that Mantle saves CPU time that could be re-used for AI. You seemed to be concerned that Mantle couldn't do that.

All I was getting at is we do not have enough information to know that Mantle's multithreading is going to free up more of the whole CPU than the traditional single threaded DX game.

He's saying it can.
 

bystander36

Diamond Member
Apr 1, 2013
5,154
132
106
He is stating though that Mantle saves CPU time that could be re-used for AI. You seemed to be concerned that Mantle couldn't do that.



He's saying it can.
He said it could. That isn't the same thing as saying it will. He even said time will tell.
 

dacostafilipe

Senior member
Oct 10, 2013
772
244
116
You are acting like they work on their own and magically deliver their calls at the right time.

Like with every system that uses async commands, you need a queue manager/worker.

If Mantle has a more advanced way to manage queues, or if you have to implement your own manager/worker, that's impossible to know without documentation.

Personally, I would create my own queue manager/worker anyway ...

Edit: I don't know if you've seen this. AMD Mantle whitepaper : http://www.amd.com/Documents/Mantle_White_Paper.pdf
 

Final8ty

Golden Member
Jun 13, 2007
1,172
13
81
Civilization graphic engineers Josh Barczak and John Kloetzli introduce AMD’s Mantle API, and explain why Firaxis is supporting Mantle with Civilization: Beyond Earth.
0. What is Mantle?

A “Graphics API” (Application Programming Interface) is a protocol that rendering engines use to send commands to a GPU (Graphics Processing Unit). The API provides an abstract set of commands like “draw” which are translated by a GPU driver into commands which a particular device can understand. At present, the two most well-known graphics APIs are DirectX and OpenGL. DirectX is dominant on Windows, and OpenGL is dominant on many other platforms.

Mantle is a new graphics API developed by AMD, and supported on all newer AMD devices beginning with the Radeon HD 7000 series.

1. What is important about Mantle?

As game developers, we want to maximize our products’ reach while minimizing our development costs. Why then, would we spend a great deal of time and effort in something that would benefit only a subset of our user base? The idea of a platform-specific API, while not unheard of was not often implemented. After all, why would anyone write their application twice, when they could write it once?

In software, the only numbers of significance are 0, 1, and N. Every cross-platform graphics engine that we have ever worked with has been designed around some kind of API abstraction which separates the game code on top from the graphics platform on the bottom. If the abstraction layer is well built, then the cost of maintaining two graphics platforms is not worse than the cost of one. It is also important to understand that, with the right architecture, graphics APIs are essentially a fixed cost. Mantle has required an up-front investment, but the cost for future products to continue offering it will be considerably lower.

Because Mantle is so new, and so different, the development cost is higher than normal. In order to understand why it’s worth it, you need to understand just how important Mantle is.

2. What does Mantle Buy You?

Simply put, Mantle is the most advanced and powerful graphics API in existence. It provides essentially the same feature set as DX11 or OpenGL, and does so at considerably lower runtime cost.

The conventional wisdom in real-time rendering is that batches, or “draw calls” are expensive. On the PC, with current APIs, this notion is firmly rooted in fact. This is a problem that has plagued engine and driver design since at least the DX9 era, and a large body of real-time rendering tradecraft is motivated by it (instancing, state sorting, texture atlasing, texture arrays, “uber-shaders”, to name a few). Civilization, it turns out, requires a significant amount of rendering to generate our view of the world, and that in turn means we are required to make many, many more draw calls than you might expect.. Our birds’ eye view of the world means that we have a lot more “stuff” on screen than is typical, and our UI (a rich source of draw calls) is considerably more complex than the average.

Mantle changes things by working at a lower level than its competitors. Much of the work that drivers used to do on an application’s behalf is now the responsibility of the game engine. This means that the Mantle API is able to be backed by a very small, simple driver, which is thus considerably faster. 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.

Besides being more efficient, core per core, Mantle also enables fully parallel draw submission (this has been attempted before, but never with the same degree of success). Until now, the CPU work of processing the draw calls could only by executed on one CPU core. By removing this limitation, Mantle allows us to spread the load across multiple cores and finish it that much faster.

All of this means that Mantle has, quite literally, reduced the cost of a draw call by an order of magnitude. This is an amazing technical achievement and difficult for us to exaggerate the importance of this savings. It is a disruptive technical development which will have far-reaching implications for PC gaming. It will alter the dynamics of the market. It will re-write portions of the real-time rendering book. It will change the design of future APIs and engines and greatly enhance their capabilities.

3. What Does This Mean to the Player?

By reducing the CPU cost of rendering, Mantle will result in higher frame rates on CPU-limited systems. As a result, players with high-end GPUs will have a much crisper and smoother experience than they had before, because their machines will no longer be held back by the CPU. On GPU-limited systems, performance may not improve, but there will still be a considerable drop in power consumption. This is particularly important given that many of these systems are laptops and tablets. The reduced CPU usage also means that background tasks are much less likely to interfere with the game’s performance, in all cases.

Finally, the smallness and simplicity of the Mantle driver means that it will not only be more efficient, but also more robust. Over time, we expect the bug rate for Mantle to be lower than D3D or OpenGL. In the long run, we expect Mantle to drive the design of future graphics APIs, and by investing in it now, we are helping to create an environment which is more favorable to us and to our customers.

4. What about these other Vendors?

At present, the benefits of Mantle extend only to those customers which can run it. We recognize that a large fraction of our customers will not have access to Mantle, and we do not intend to discriminate.

Our philosophy is to strive to use our customers’ machines to their fullest potential. To the extent possible, DirectX customers will see the same images as Mantle customers, and we will provide DirectX customers with the highest performance that their systems are capable of. It is precisely this motivation which impels us to offer Mantle to those customers who can use it, because their machines possess great untapped potential. By tapping that potential, we hope to drive positive changes which will eventually spread to all of our other customers.

We expect that future graphics APIs will follow Mantle’s lead, and become much lower-level, out of necessity. There is nothing preventing other vendors from following AMD’s example and offering low-level access to their own hardware, and we are perfectly willing to support such efforts. One API is clearly better for us than many, but if having many allows us to maximize performance across the board, then that is where the future will take us.

In the irreverently paraphrased words of Sir Winston Churchill:

“If we can standardize it, all drawcalls may be free, and the life of the gamers may move forward into broad, sunlit uplands”.

That, dear friends, is why “I Am Mantle.”
http://www.firaxis.com/?/S=5845faee...eb5f6cb11/blog/single/why-we-went-with-mantle
 
Feb 19, 2009
10,457
10
76
"This is an amazing technical achievement and difficult for us to exaggerate the importance of this savings. It is a disruptive technical development which will have far-reaching implications for PC gaming. It will alter the dynamics of the market. It will re-write portions of the real-time rendering book. It will change the design of future APIs and engines and greatly enhance their capabilities."

Bold words.

Considering these guys did DX11 Multi-threading for Civ.

DX12 is going to be awesome. Mantle for the masses!

As for turn based games and not needing/benefiting from Mantle grunt. From the devs themselves:

"Civilization, it turns out, requires a significant amount of rendering to generate our view of the world, and that in turn means we are required to make many, many more draw calls than you might expect.. Our birds’ eye view of the world means that we have a lot more “stuff” on screen than is typical, and our UI (a rich source of draw calls) is considerably more complex than the average."
 

DiogoDX

Senior member
Oct 11, 2012
746
277
136
AMD signs up 40 development studios for private Mantle SDK

AMD said Thursday that the company has signed up 40 developer studios wishing to use its Mantle technology, and is issuing another round of invitations for others to access a new portal.

AMD wouldn’t say who those developers were, or whether the company had extracted firm commitments from those who had signed up to develop for AMD’s technology. But the company is trying to generate buzz surrounding the sheer numbers of those who have signed up.

“There are no objective criteria for being selected, as we are interested in talking to developers of all shapes and sizes,” the company said in a statement. “Past development experience is encouraged, however.” The password-protected developer portal is now live, AMD said.
http://www.pcworld.com/article/2150...velopment-studios-for-private-mantle-sdk.html
 

Headfoot

Diamond Member
Feb 28, 2008
4,444
641
126
Reading between the lines there, it seems pretty clear after their talk of "graphics APIs are essentially a fixed cost" I believe that they think they will be able to re-use some of their Mantle work for an eventual DX12 port (console port too?) or DX12 evolution of the engine for the next release.

If true, it seems in the short-term DX12's similarity in many respects to Mantle might actually help Mantle adoption. Whether that remains true in the long term is a different and separate issue.
 

PPB

Golden Member
Jul 5, 2013
1,118
168
106
"Besides being more efficient, core per core, Mantle also enables fully parallel draw submission (this has been attempted before, but never with the same degree of success). Until now, the CPU work of processing the draw calls could only by executed on one CPU core. By removing this limitation, Mantle allows us to spread the load across multiple cores and finish it that much faster."

So that puts the "there is always a lead thread" BS to rest.
 

Carfax83

Diamond Member
Nov 1, 2010
6,841
1,536
136
"So that puts the "there is always a lead thread" BS to rest.

That's pretty amazing truth be told. But we'll see how well it works in practice.

There's a reason why DX11 MT, and even DX12 uses a lead thread for final submission. It's because graphics processing by nature is inherently ordered so timing is crucial.
 

Despoiler

Golden Member
Nov 10, 2007
1,966
770
136
That's pretty amazing truth be told. But we'll see how well it works in practice.

There's a reason why DX11 MT, and even DX12 uses a lead thread for final submission. It's because graphics processing by nature is inherently ordered so timing is crucial.

Ahh it's already in practice in Star Swarm....
 
sale-70-410-exam    | Exam-200-125-pdf    | we-sale-70-410-exam    | hot-sale-70-410-exam    | Latest-exam-700-603-Dumps    | Dumps-98-363-exams-date    | Certs-200-125-date    | Dumps-300-075-exams-date    | hot-sale-book-C8010-726-book    | Hot-Sale-200-310-Exam    | Exam-Description-200-310-dumps?    | hot-sale-book-200-125-book    | Latest-Updated-300-209-Exam    | Dumps-210-260-exams-date    | Download-200-125-Exam-PDF    | Exam-Description-300-101-dumps    | Certs-300-101-date    | Hot-Sale-300-075-Exam    | Latest-exam-200-125-Dumps    | Exam-Description-200-125-dumps    | Latest-Updated-300-075-Exam    | hot-sale-book-210-260-book    | Dumps-200-901-exams-date    | Certs-200-901-date    | Latest-exam-1Z0-062-Dumps    | Hot-Sale-1Z0-062-Exam    | Certs-CSSLP-date    | 100%-Pass-70-383-Exams    | Latest-JN0-360-real-exam-questions    | 100%-Pass-4A0-100-Real-Exam-Questions    | Dumps-300-135-exams-date    | Passed-200-105-Tech-Exams    | Latest-Updated-200-310-Exam    | Download-300-070-Exam-PDF    | Hot-Sale-JN0-360-Exam    | 100%-Pass-JN0-360-Exams    | 100%-Pass-JN0-360-Real-Exam-Questions    | Dumps-JN0-360-exams-date    | Exam-Description-1Z0-876-dumps    | Latest-exam-1Z0-876-Dumps    | Dumps-HPE0-Y53-exams-date    | 2017-Latest-HPE0-Y53-Exam    | 100%-Pass-HPE0-Y53-Real-Exam-Questions    | Pass-4A0-100-Exam    | Latest-4A0-100-Questions    | Dumps-98-365-exams-date    | 2017-Latest-98-365-Exam    | 100%-Pass-VCS-254-Exams    | 2017-Latest-VCS-273-Exam    | Dumps-200-355-exams-date    | 2017-Latest-300-320-Exam    | Pass-300-101-Exam    | 100%-Pass-300-115-Exams    |
http://www.portvapes.co.uk/    | http://www.portvapes.co.uk/    |