Civilization: Beyond Earth the next Mantle game.

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

bystander36

Diamond Member
Apr 1, 2013
5,154
132
106
And why not?
OK how about lightly animated, almost static, highly predictable... with panning.

Am I missing something - what kind of terrific calculations goes on in the background to warrant this CPU hunger.
It is kind of funny that when I started using PC's (in the 80's), a simple game of chess at beginner abilities would take a couple minutes a turn to move. To play at intermediate levels might take 10-30mins a turn.

Anyways, in Civ5, in the late stages when things start to slow down some, you have 5-10 PC run players who have several cities, and many men (100 or more) all over the map with all kinds of options at any given time. They also are given different personalities so they all behave differently. Also, if any of those moves are viewable by you, they animate the action.

I'm sure that if they were to never change the rules in Civ, they could make more specific calculations, in the way that chess games have done, but Civ is ever evolving.

Another thing that is important is that because it is turn based, their A.I. has to be better than in real time strategy games, where the A.I. can make up their lack of intelligence with great response time. This is why their difficulty levels simply give the A.I. advantages in the rules of the game.
 

f1sherman

Platinum Member
Apr 5, 2011
2,243
1
0
I am talking about the TURN itself. Not when you hit END TURN.
There is some feedback, mousover tooltips etc... thats it.
Panning the map around, or sitting on top of it does not involve any AI calculations.

Contrary to most chess programs which do branch calculations and position evaluations even during your move.

During Commodore era I had C64 locked up and refusing to make a move,
because no matter what I had had indefensible checkmate in two more moves.
The damn thing was trying to find the save when none existed
 

bystander36

Diamond Member
Apr 1, 2013
5,154
132
106
I am talking about the TURN itself. Not when you hit END TURN.
There is some feedback, mousover tooltips etc... thats it.
Panning the map around, or sitting on top of it does not involve any AI calculations.

Ah, well, my only guess is that no matter how much you zoom out or zoom in, it calculates each individual cell and the units on that cell individually, even if it really doesn't need to. I'd bet a lot of it could be fixed by not animating things which are too small to see.
 

Yuriman

Diamond Member
Jun 25, 2004
5,530
141
106
... uh what?

Basically this.

On every turn, every player is capable of moving their units, completing construction, attacking, etc., all at the same time, it's not like the game stands still. There's simply a limited number of things you can do before you can advance to the next turn. Once all players have exhausted their actions, play proceeds.
 
Aug 11, 2008
10,451
642
126
I dont doubt Civ is cpu limited. The question is how much mantle will help reduce cpu overhead in the AI. AI itself should not require draw calls if I understand correctly, but I suppose draw calls could still be high because of all the units on the screen.

To me, seems like Mantle would be of more benefit in an RTS where there are a lot of units moving around on the screen at once, but I am no programmer, so I could be wrong.
 

VulgarDisplay

Diamond Member
Apr 3, 2009
6,193
2
76
I dont doubt Civ is cpu limited. The question is how much mantle will help reduce cpu overhead in the AI. AI itself should not require draw calls if I understand correctly, but I suppose draw calls could still be high because of all the units on the screen.

To me, seems like Mantle would be of more benefit in an RTS where there are a lot of units moving around on the screen at once, but I am no programmer, so I could be wrong.

If the draw calls are incurring a much lower penalty all that extra CPU grunt can be used elsewhere. The other thing to remember is how awesome mantle multithreads in bf4. Its so good that if anything in the background tries to use the CPU the game becomes a stuttering mess...

So it needs a little work, but it is very well threaded.
 

bystander36

Diamond Member
Apr 1, 2013
5,154
132
106
If the draw calls are incurring a much lower penalty all that extra CPU grunt can be used elsewhere. The other thing to remember is how awesome mantle multithreads in bf4. Its so good that if anything in the background tries to use the CPU the game becomes a stuttering mess...

So it needs a little work, but it is very well threaded.
Does mantle end up using less CPU cycles? Because it is multithreaded, it load balances very well, and on a single thread, it would use less, but going multithreaded requires extra overhead not normally needed, which might increase overall CPU usage. I don't even know if Civ5 is multithreaded on it's A.I. either.

I can say that the game is a huge time suck, which because of this thread, I've played a couple times now.
 

Yuriman

Diamond Member
Jun 25, 2004
5,530
141
106
Does mantle end up using less CPU cycles? Because it is multithreaded, it load balances very well, and on a single thread, it would use less, but going multithreaded requires extra overhead not normally needed, which might increase overall CPU usage. I don't even know if Civ5 is multithreaded on it's A.I. either.

I can say that the game is a huge time suck, which because of this thread, I've played a couple times now.

As I understand it, Mantle generally (as general as you can be with the game(s) out) has both less overhead and better threading. Picking an arbitrary number to represent load, instead of "80" on one core, you can do 40 on the main core and 5 on 7 other threads. If you were limited by single-threaded performance, you've doubled (simplified) the amount of CPU free for other things. If you're limited by overall CPU power, you've still gone from 80 -> 75 total, freeing up a bit.
 

bystander36

Diamond Member
Apr 1, 2013
5,154
132
106
As I understand it, Mantle generally (as general as you can be with the game(s) out) has both less overhead and better threading. Picking an arbitrary number to represent load, instead of "80" on one core, you can do 40 on the main core and 5 on 7 other threads. If you were limited by single-threaded performance, you've doubled (simplified) the amount of CPU free for other things. If you're limited by overall CPU power, you've still gone from 80 -> 75 total, freeing up a bit.
I do realize Mantle does less cycles per draw call, but multithreading adds processing time to manage those threads. It may still end up less, but they've never indicated anything about how much overhead multithreading incurs. It helps in almost all situations, as it is rare if ever that a game uses all the processing power of a CPU, but that doesn't mean it doesn't steal more overall CPU processing power than a single threaded DX game, but it may very well. That is the question I have.
 

VulgarDisplay

Diamond Member
Apr 3, 2009
6,193
2
76
I do realize Mantle does less cycles per draw call, but multithreading adds processing time to manage those threads. It may still end up less, but they've never indicated anything about how much overhead multithreading incurs. It helps in almost all situations, as it is rare if ever that a game uses all the processing power of a CPU, but that doesn't mean it doesn't steal more overall CPU processing power than a single threaded DX game, but it may very well. That is the question I have.

The only thing that really pertains to the multithreading of Mantle that I have seen so far is the Oxide slides. They say there is no lead thread for mantle so you don't waste cycles managing workloads if I understand it correctly. The dev gets fine grained control regarding what runs where and when.
 

sirroman

Junior Member
Aug 23, 2013
17
0
0
I am talking about the TURN itself. Not when you hit END TURN.
There is some feedback, mousover tooltips etc... thats it.
Panning the map around, or sitting on top of it does not involve any AI calculations.

Contrary to most chess programs which do branch calculations and position evaluations even during your move.

During Commodore era I had C64 locked up and refusing to make a move,
because no matter what I had had indefensible checkmate in two more moves.
The damn thing was trying to find the save when none existed

Zoom out and/or pan the map on a late game battle. It will punish the CPU.

I do wish next-gen TBS will calculate some of the AI on your turn, decreasing the workload between turns.
 

Carfax83

Diamond Member
Nov 1, 2010
6,841
1,536
136
The only thing that really pertains to the multithreading of Mantle that I have seen so far is the Oxide slides. They say there is no lead thread for mantle so you don't waste cycles managing workloads if I understand it correctly. The dev gets fine grained control regarding what runs where and when.

To me Mantle having no lead thread is strange. Graphics rendering is an ordered process in many respects, so I'm curious as to how they get around the problem of the CPU sending instructions to the GPU across multiple threads at the same time without a lead thread for final rendering.

For comparison, both DX11 and DX12 have lead threads.. Or is this just a peculiarity for the Oxide engine alone?
 

Despoiler

Golden Member
Nov 10, 2007
1,966
770
136
To me Mantle having no lead thread is strange. Graphics rendering is an ordered process in many respects, so I'm curious as to how they get around the problem of the CPU sending instructions to the GPU across multiple threads at the same time without a lead thread for final rendering.

For comparison, both DX11 and DX12 have lead threads.. Or is this just a peculiarity for the Oxide engine alone?

It's just their engine that choose to implement it that way, not that Mantle forcing that decision. That being said, their engine is designed from the ground up for 64bit and multi-threading. Dan Baker certainly knows how to build an engine and that is what he felt was the most forward thinking engine design.
 

krumme

Diamond Member
Oct 9, 2009
5,956
1,595
136
To me Mantle having no lead thread is strange. Graphics rendering is an ordered process in many respects, so I'm curious as to how they get around the problem of the CPU sending instructions to the GPU across multiple threads at the same time without a lead thread for final rendering.

For comparison, both DX11 and DX12 have lead threads.. Or is this just a peculiarity for the Oxide engine alone?

Its tied to the oxide engine and goes for both dx and mantle. There is no lead thread. We have been over it before here and how it can be done. cant remember where. Try a search.
 

bystander36

Diamond Member
Apr 1, 2013
5,154
132
106
Its tied to the oxide engine and goes for both dx and mantle. There is no lead thread. We have been over it before here and how it can be done. cant remember where. Try a search.
Lead thread or not, something has order the execution of the threads.
 

bystander36

Diamond Member
Apr 1, 2013
5,154
132
106
Yes and that is distributed this engine is an absolutely breaktrough in methology.
More likely, you just aren't understanding them fully. They say things to sell you on different aspects of the engine, without telling you everything.

There may not be a "lead thread", but then that just means each thread has added overhead to decide when it executes.
 

krumme

Diamond Member
Oct 9, 2009
5,956
1,595
136
More likely, you just aren't understanding them fully. They say things to sell you on different aspects of the engine, without telling you everything.

There may not be a "lead thread", but then that just means each thread has added overhead to decide when it executes.

The sad thing is, with my non programming background, i still understand more than you do. And at least i acknowledge there is something new i didnt think was possible prior.

And when someone present radically new methology i appriciate and acknowledge it. But the usual whining and downplaying commences just because some "enthusiasts" think it has anything to do with mantle or amd. Go back in the threads we have been there.
 

bystander36

Diamond Member
Apr 1, 2013
5,154
132
106
The sad thing is, with my non programming background, i still understand more than you do. And at least i acknowledge there is something new i didnt think was possible prior.

And when someone present radically new methology i appriciate and acknowledge it. But the usual whining and downplaying commences just because some "enthusiasts" think it has anything to do with mantle or amd. Go back in the threads we have been there.
As a programmer, I do understand and appreciate new things. I also understand that there are some things you cannot get around. You cannot have a bunch of threads running around working on their own without something to control what happens when.

They may not have the traditional control thread, but there is some mechanism in place to make sure all the threads make their calls in the proper order at the right times.

You are acting like they work on their own and magically deliver their calls at the right time.

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. That sort of thing was not talked about as it isn't really the problem Mantle is trying to tackle. Mantle's great achievement is getting the draw calls to happen on multiple threads and delivering even frame rates at the same time. That is definitely a great feat, but you don't have to over sell the thing because you are excited. It might reduce the overall load on the CPU, but we don't have that information yet. What I've seen is that it loads the CPU more, as it takes processing power on any core with available usage. That clearly is an advantage in most games these days, but that may not help the A.I. work faster on Civ games.
 
Last edited:

3DVagabond

Lifer
Aug 10, 2009
11,951
204
106
I'm not sure what you are arguing?

As a programmer, I do understand and appreciate new things. I also understand that there are some things you cannot get around. You cannot have a bunch of threads running around working on their own without something to control what happens when.

They may not have the traditional control thread, but there is some mechanism in place to make sure all the threads make their calls in the proper order at the right times.

You are acting like they work on their own and magically deliver their calls at the right time.

Of course they control the order that threads are executed as well as assigning it to specific cores to better distribute the load on the CPU. That's the main benefit of Mantle. It actually allows them the control instead of the API doing it. Nobody is claiming it's magic.

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. That sort of thing was not talked about as it isn't really the problem Mantle is trying to tackle. Mantle's great achievement is getting the draw calls to happen on multiple threads and delivering even frame rates at the same time. That is definitely a great feat, but you don't have to over sell the thing because you are excited. It might reduce the overall load on the CPU, but we don't have that information yet. What I've seen is that it loads the CPU more, as it takes processing power on any core with available usage. That clearly is an advantage in most games these days, but that may not help the A.I. work faster on Civ games.

Where's the claim that Mantle frees up more of the CPU? It's the opposite. There's to much of the CPU doing nothing and Mantle makes better use of the available CPU by distributing the load across the cores as the developer sees fit. That's what makes it more efficient.
 

bystander36

Diamond Member
Apr 1, 2013
5,154
132
106
I'm not sure what you are arguing?



Of course they control the order that threads are executed as well as assigning it to specific cores to better distribute the load on the CPU. That's the main benefit of Mantle. It actually allows them the control instead of the API doing it. Nobody is claiming it's magic.
krumme apparently is.



Where's the claim that Mantle frees up more of the CPU? It's the opposite. There's to much of the CPU doing nothing and Mantle makes better use of the available CPU by distributing the load across the cores as the developer sees fit. That's what makes it more efficient.
That's what I've said.

The question which as been posed is can Mantle's approach free up total CPU usage enough that a game like Civ5's AI can have more free CPU usage.

Some are arguing that it will, because Mantle has lower overhead per call. I'm arguing that we do not know because while each call may be less, the multithreading nature may still take away more usage, not to mention that it is making more calls as a result of it allowing more to be made.
 
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/    |