|
|
|
|
 |
|

May 26th, 2008, 05:26 PM
|
|
Major General
|
|
Join Date: Mar 2007
Location: Seattle
Posts: 2,497
Thanks: 165
Thanked 105 Times in 73 Posts
|
|
Re: Dominions 3 on Dual Quad core machines
No chance. Dom3 is written in C, which is almost intrinsically sequential and thus single-core for the next few years. Take advantage of your dual core machine to play music in the background instead.
Making proper use of many-core machines is a problem the software industry is very much struggling with.
-Max
__________________
Bauchelain - "Qwik Ben iz uzin wallhax! HAX!"
Quick Ben - "lol pwned"
["Memories of Ice", by Steven Erikson. Retranslated into l33t.]
|

May 26th, 2008, 05:43 PM
|
 |
Lieutenant Colonel
|
|
Join Date: Jul 2004
Location: Israel
Posts: 1,449
Thanks: 4
Thanked 8 Times in 2 Posts
|
|
Re: Dominions 3 on Dual Quad core machines
Play music? What a waste.
Just play two games simultaneously.
(unless it's a quadcore)
__________________
I'm in the IDF. (So any new reply by me is a very rare event.)
|

May 26th, 2008, 05:58 PM
|
 |
Lieutenant General
|
|
Join Date: May 2008
Location: Utopia, Oregon
Posts: 2,676
Thanks: 83
Thanked 143 Times in 108 Posts
|
|
Re: Dominions 3 on Dual Quad core machines
Well they better hurry, Intel has promised to bring their 80 core processors to the consumer market within the next 4 years or so.
|

May 26th, 2008, 07:58 PM
|
|
First Lieutenant
|
|
Join Date: Nov 2006
Posts: 739
Thanks: 1
Thanked 8 Times in 8 Posts
|
|
Re: Dominions 3 on Dual Quad core machines
Quote:
MaxWilson said:
No chance. Dom3 is written in C, which is almost intrinsically sequential and thus single-core for the next few years. Take advantage of your dual core machine to play music in the background instead.
Making proper use of many-core machines is a problem the software industry is very much struggling with.
-Max
|
There's nothing about C that precludes doing things in separate threads. It's just an app not specifically designed for it generally takes a lot of work to convert.
There's also my opinion of C:
Programs, like ships, sink in the C.
|

May 27th, 2008, 04:09 AM
|
|
Lieutenant General
|
|
Join Date: Sep 2007
Posts: 2,691
Thanks: 5
Thanked 39 Times in 31 Posts
|
|
Re: Dominions 3 on Dual Quad core machines
That has got to be the very rare programmer humor. However rare it might be it's still not that funny though.
__________________
Want a blend of fantasy and sci-fi? Try the total conversion Dominions 3000 mod with a new and fully modded solar system map.
Dragons wanted? Try the Dragons, Magic Incarnate nation.
New and different undead nation? Try Souls of Shiar. Including new powerfull holy magic.
In for a whole new sort of game? Then try my scenario map Gang Wars.
|

May 27th, 2008, 04:49 AM
|
 |
General
|
|
Join Date: Jun 2003
Location: az
Posts: 3,069
Thanks: 41
Thanked 39 Times in 28 Posts
|
|
Re: Dominions 3 on Dual Quad core machines
Quote:
MaxWilson said:
No chance. Dom3 is written in C, which is almost intrinsically sequential and thus single-core for the next few years. Take advantage of your dual core machine to play music in the background instead.
Making proper use of many-core machines is a problem the software industry is very much struggling with.
-Max
|
Well anyone playing multiple large SP games could run them both at the same time and use the 'set affinity' so each game can use different CPUs. Another idea is maybe running one MP game and one SP game using 'set affinity'.
__________________
There can be only one.
|

May 27th, 2008, 08:23 AM
|
|
Corporal
|
|
Join Date: Apr 2008
Posts: 68
Thanks: 0
Thanked 0 Times in 0 Posts
|
|
Re: Dominions 3 on Dual Quad core machines
While converting the entire application to multicore might be a huge amount of work, I'd think that converting just the battle resolution (which is the only thing that takes a lot of time anyway) shouldn't be that hard. As long as you know what you're doing (this is probably not a good first attempt at multicore usage) and the battle resolution is programmed the right way in the current state.
I mean, think about it. Every turn there is a bunch of battles, and they're all mostly independent from each other. The flow of the program might have to be changed somewhat ( prepare all battles first, then resolve them all), but the subsequent multitasking is basically just resolving multiple battles at the same time rather than one at a time.
|

May 27th, 2008, 09:23 AM
|
 |
Lieutenant Colonel
|
|
Join Date: Jul 2004
Location: Israel
Posts: 1,449
Thanks: 4
Thanked 8 Times in 2 Posts
|
|
Re: Dominions 3 on Dual Quad core machines
I'm pretty sure it won't work.
IIRC Dominions uses tables of prerandomized numbers, and to show a battle again just means starting at the right place in the right table and recalculating the whole thing all over again.
If you simulate more than one battle at once, you can't tell which random numbers belong to which battle, since they'll all be taking random numbers randomly.
I'm not really explaining this well, but I hope you understand anyway
EDIT: Just to be clear, I'm not saying "impossible!"*, I'm just saying "harder than you think."
*-obviously it is impossible, even if at the worst case scenario it would take rewriting the entire source code from scratch 
__________________
I'm in the IDF. (So any new reply by me is a very rare event.)
|

May 27th, 2008, 12:23 PM
|
|
Corporal
|
|
Join Date: Apr 2008
Posts: 68
Thanks: 0
Thanked 0 Times in 0 Posts
|
|
Re: Dominions 3 on Dual Quad core machines
Actually, random numbers are a good point. I hadn't considered those.
Unless the reverse engineering I did in my mind is wrong, Dominions relies on the deterministic nature of its code to produce the same battle results on every machine a game is played on. Without prerandomized numbers, a random number generator (one of those pseudorandom generators which produces the same results if you seed it with a static value) would still suffer from the same problem - it's only deterministic if all the calls to it occur in the same order every time.
As you said I'm sure it's still a solvable problem, but it's definitely something that would have to be thought about.
I *still* think it wouldn't be incredibly difficult to implement this, but I also don't think it's really necessary enough to warrant the work anyway. In my big SP game experience loading times were really not all that horrible. Although if it's just for SP, a simple pseudorandom generator that isn't deterministic would probably be sufficient anyway.
|

May 27th, 2008, 12:43 PM
|
|
General
|
|
Join Date: Apr 2005
Posts: 3,327
Thanks: 4
Thanked 133 Times in 117 Posts
|
|
Re: Dominions 3 on Dual Quad core machines
There are no simple non-deterministic pseudorandom generators.
In fact pseudo-random is pretty much equivalent to deterministic.
I believe Dominions does use a pseudo random generator not a pregenerated table.
The simplest implementation that comes to mind for doing the battles in parallel would be for each thread to work with it's own RNG and for the main process to generate the seeds for each battle before spinning off the thread.
|
| Thread Tools |
|
|
| Display Modes |
Hybrid Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is On
|
|
|
|
|