Howa many players at once?

General discussion about Multiwinia

Moderators: jelco, bert_the_turtle

User avatar
briceman2
level2
level2
Posts: 123
Joined: Wed Dec 12, 2007 4:30 am

Postby briceman2 » Mon Mar 10, 2008 6:02 pm

NeoThermic wrote:Again, I never had such issues. I'd assume, then, that these are bugs native to the Linux version?


I don't think so. I've been tinkering a lot with "circuit bending" mods where I take advantage of unusual parameter sets and special unit and building setups to achieve novel behaviors probably never intended by Chris. I've verified that most if not all of these quirks behave the same under WinXP on the same machine (although with sometimes 50% the fps preformance, even with all the most recent drivers).

Probably your system balance is CPU heavy compared to mine. I've got a 1.8GHz single core Athlon and an old Nvidia 6600GS (LE < GS < GT) 128K GDDR2 running the proprietary Nvidia drivers, but the old 7174 release. So I'd guess you aren't seeing the CPU bound behavior I'm seeing. There's no way I can even get close to 50K DGs. I think my system tops out somewhere between 5-10K without any AI challenges (not AIUnit directed behaviors). Battles involving 2-3k on each side are passable at maybe 20fps.

Here's another observation to back up what I'm saying (at least on my sytem). I can place or spawn a patch of several thousand virii with no problem as long as they have no enemies to attack or other things to track. Rendering at a distance is fine, but extreme closeups chug. (The engine doesn't seem efficient when compositing thousands of texture maps with transparency -- maybe that's my GPU?) Anyhow, as soon as souls start to appear on the map, fps drops -- presumably because virii are now searching for them and the data structs aren't optimised for mass searches. Once the souls rise (or if a global SpawnPtMaster is placed on the map) the fps also rises.

Another example is with laserfences. I have a test level with a couple hundred fence segments which rise and fall randomly. (Hard maximum transparent bldgs = 255 or 256 = laserfence segmants + trees.) Every time a segment finishes changing state, the entire ObstructionGrid is recalculated for the whole map. I can watch the server messages for this in a terminal window. On this particular level each full recalc takes 50-60ms. So whenever 5-10 segments change state simultaneously, huge CPU stalls of 0.5-1.0sec occur. Obviously an optimised approach would use a data struct that could add and remove individual segmants (and other building obsticles) without having to recalculate the entire ObstructionGrid. But it is what it is.

What I'm seeing is definitely CPU bound behavior -- bumping up against data struct searches that were never optimised for heavy use. Or at least that's what I tell myself....

I'm not arguing that CPU >> GPU for all performance issues. That would be silly. But on systems similar to mine, I'd bet that peformance is limited mostly by CPU as long as you have a modest GPU. And I think GPU performance will scale much better than CPU because drivers are optimised while it seems lots of data searches are not optimised in the darwinia engine. Notably the neighbor searches, and especially when they have to deal explicitly with the third dimension (like when DGs aim lasers into the sky).

Obviously you and I are both running the engine far outside it's design parameters! :) But that's fun, isn't it?
Last edited by briceman2 on Mon Mar 10, 2008 6:16 pm, edited 2 times in total.
User avatar
briceman2
level2
level2
Posts: 123
Joined: Wed Dec 12, 2007 4:30 am

Postby briceman2 » Mon Mar 10, 2008 6:06 pm

martin wrote:I know what exponential decay is ^^

However, what I meant to say is that why does the rate of decay suddenly slow down at 10ish, because it certainly doesn't look like it's decaying at the same rate to me


Uhhh, exponential means non-linear..........
martin
level5
level5
Posts: 3210
Joined: Fri Nov 19, 2004 8:37 pm

Postby martin » Mon Mar 10, 2008 6:10 pm

Yes, I know, but the rate of decay seems to suddenly slow down at 10
GENERATION 22:The first time you see this, copy it into your sig on any forum and add 1 to the generation. Social experiment.
User avatar
xander
level5
level5
Posts: 16869
Joined: Thu Oct 21, 2004 11:41 pm
Location: Highland, CA, USA
Contact:

Postby xander » Mon Mar 10, 2008 6:31 pm

That is what exponential decay does, martin. That is what people are telling you.

Imagine the equation e^(-x). The first derivative of e^(-x) is -e^(-x). That means that, at any point, the slope of the curve is -e^(-x). As x increases, -e^(-x) decreases. Thus, the rate of change decreases. Hence, the curve appears to level off. In fact, it is still decreasing, at a decreasing rate.

xander
User avatar
NeoThermic
Introversion Staff
Introversion Staff
Posts: 6256
Joined: Sat Mar 02, 2002 10:55 am
Location: ::1
Contact:

Postby NeoThermic » Mon Mar 10, 2008 6:32 pm

briceman2 wrote:Probably your system balance is CPU heavy compared to mine. I've got a 1.8GHz single core Athlon and an old Nvidia 6600GS (LE < GS < GT) 128K GDDR2 running the proprietary Nvidia drivers, but the old 7174 release. So I'd guess you aren't seeing the CPU bound behavior I'm seeing. There's no way I can even get close to 50K DGs. I think my system tops out somewhere between 5-10K without any AI challenges (not AIUnit directed behaviors). Battles involving 2-3k on each side are passable at maybe 20fps.


Aha. See, the machine I did my graphs on was a 3GHz P4 with a ATi 9600 Pro. I'd love to run the tests on my new machine, a 3GHz Quadcore with a 8800GT...

briceman2 wrote:Here's another observation to back up what I'm saying (at least on my sytem). I can place or spawn a patch of several thousand virii with no problem as long as they have no enemies to attack or other things to track. Rendering at a distance is fine, but extreme closeups chug. (The engine doesn't seem efficient when compositing thousands of texture maps with transparency -- maybe that's my GPU?) Anyhow, as soon as souls start to appear on the map, fps drops -- presumably because virii are now searching for them and the data structs aren't optimised for mass searches. Once the souls rise (or if a global SpawnPtMaster is placed on the map) the fps also rises.

What I'm seeing is definitely CPU bound behavior -- bumping up against data struct searches that were never optimised for heavy use. Or at least that's what I tell myself....


Ah. Yes. The data structs don't lend well to searching. If they are the same-ish ones as used in Uplink, then doing searches would cause an issue.

briceman2 wrote:I'm not arguing that CPU >> GPU for all performance issues. That would be silly. But on systems similar to mine, I'd bet that peformance is limited mostly by CPU as long as you have a modest GPU. And I think GPU performance will scale much better than CPU because drivers are optimised while it seems lots of data searches are not optimised in the darwinia engine. Notably the neighbor searches, and especially when they have to deal explicitly with the third dimension (like when DGs aim lasers into the sky).


Drivers don't help totally much if the rendering is bad ;) However, CPU bound issues normally keep quiet as the GPU lets down first. Laptops are always a good example of this :)


briceman2 wrote:Obviously you and I are both running the engine far outside it's desing parameters! :) But that's fun, isn't it?


One should always design the engine for the extreme people! ;)

NeoThermic
User avatar
shinygerbil
level5
level5
Posts: 4667
Joined: Wed Dec 22, 2004 10:14 pm
Location: Out, finding my own food. Also, doing the shinyBonsai Manoeuvre(tm)
Contact:

Postby shinygerbil » Mon Mar 10, 2008 6:32 pm

whoa, xander totally did maths on your ass, martin.
Here is my signature. Make of it what you will.
Image
Montyphy
level5
level5
Posts: 6747
Joined: Tue Apr 19, 2005 2:28 pm
Location: Bristol, England

Postby Montyphy » Mon Mar 10, 2008 6:39 pm

PWND. wot a n00b.
Uplink help: Check out the Guide or FAQ.
Latest Uplink patch is v1.55.
martin
level5
level5
Posts: 3210
Joined: Fri Nov 19, 2004 8:37 pm

Postby martin » Mon Mar 10, 2008 6:51 pm

xander wrote:That is what exponential decay does, martin. That is what people are telling you.

Imagine the equation e^(-x). The first derivative of e^(-x) is -e^(-x). That means that, at any point, the slope of the curve is -e^(-x). As x increases, -e^(-x) decreases. Thus, the rate of change decreases. Hence, the curve appears to level off. In fact, it is still decreasing, at a decreasing rate.

xander


Don't you teach maths or something xander? or am just imagining that :s

Anyway, I believe I mentioned that I know what an exponential curve is, I just don't have the words to express what I mean :/

Also, I believe an exponential is more e^(-kx) actually, and I mean that k is apparently suddenly getting smaller when the graph crosses 10, or am I also just imagining that?

funny this should come up when we're covering more calculus in maths and radioactivity in physics ><
GENERATION 22:The first time you see this, copy it into your sig on any forum and add 1 to the generation. Social experiment.
User avatar
briceman2
level2
level2
Posts: 123
Joined: Wed Dec 12, 2007 4:30 am

Postby briceman2 » Mon Mar 10, 2008 6:57 pm

martin wrote:Also, I believe an exponential is more e^(-kx) actually, and I mean that k is apparently suddenly getting smaller when the graph crosses 10, or am I also just imagining that?


While you try to impress us, you are still showing your extreeme n00bness.

You root probem is that you are looking for a perfect exponential curve in the real world. Only n00bs do that.

In the real world *nothing* *ever* happens as cleanly as the formulas say they should. That's why we have statistical curve fitting -- and hundreds of flavors of it to boot.

What you are wasting everyone's bandwith about -- trying to make an intelligent point to impress us -- is probably nothing more than noise in the measurements. In any case it is not relevant to the overall characteristics of the curve NeoThermic presented.

There's a proverb for this n00bness. Something about trees and forests... Do you see how it might fit?
martin
level5
level5
Posts: 3210
Joined: Fri Nov 19, 2004 8:37 pm

Postby martin » Mon Mar 10, 2008 7:02 pm

I'm not looking for a perfect exponential curve, however it just seemed to me that the decay slows down a lot at about 10, it was a simple comment that wasn't here nor there!
Also, as far as maths is concerned I am a newb compared to a lot of people who have probably got some qualifications in maths :P

edit:: actually I do have some qualifications in maths but GCSE doesn't cover this stuff, and exponentials are a fairly new thing to me (we covered them briefly a while ago in brief but we're only just covering them properly now)
GENERATION 22:The first time you see this, copy it into your sig on any forum and add 1 to the generation. Social experiment.
User avatar
briceman2
level2
level2
Posts: 123
Joined: Wed Dec 12, 2007 4:30 am

Postby briceman2 » Mon Mar 10, 2008 7:27 pm

jelco the galactaboy wrote:EDIT: @briceman2: The message is clear, but I hope you do realize that spelling noob with zeroes somewhat makes you look a like an idiot yourself? :wink:


Thanks. I was just copying Montyphy above. I can never keep track of which is which.

Actually, I wish I were as witty as shinygerbil. "Maths on your ass" made me laugh!

I really have to go back to ignoring martin. I screwed up here! He's one of those infuriating people who never concedes any point -- and who seems impervious to all logic and help. A perfect example of futility. Martin's true calling might be as a tormenter in one of the circles of Dante's hell... The thought makes me want to become good so I never end up in that cubicle...
User avatar
briceman2
level2
level2
Posts: 123
Joined: Wed Dec 12, 2007 4:30 am

Postby briceman2 » Mon Mar 10, 2008 7:46 pm

jelco the galactaboy wrote:Right. Should we stop taking you seriously now? :D


Nah. I'll just become bad in another way... one that won't land me in a room with martin for all eternity!
martin
level5
level5
Posts: 3210
Joined: Fri Nov 19, 2004 8:37 pm

Postby martin » Mon Mar 10, 2008 9:03 pm

briceman2 wrote:
jelco the galactaboy wrote:Right. Should we stop taking you seriously now? :D


Nah. I'll just become bad in another way... one that won't land me in a room with martin for all eternity!


This punishment has already been picked for you should you end up in the hot place with me and my friends :twisted: ... umm, I mean, I guess I'll just drop this point - conceded, it doesn't slow down at all beyond normal exponential decay.

@Jelco, I'm fairly sure we never covered them until now, it's not impossible that I've forgotten them but it's fairly unlikely :s
GENERATION 22:The first time you see this, copy it into your sig on any forum and add 1 to the generation. Social experiment.
Montyphy
level5
level5
Posts: 6747
Joined: Tue Apr 19, 2005 2:28 pm
Location: Bristol, England

Postby Montyphy » Tue Mar 11, 2008 12:12 am

martin wrote:@Jelco, I'm fairly sure we never covered them until now, it's not impossible that I've forgotten them but it's fairly unlikely :s


Isn't it covered at the beginning of P1 and midway through S1 (in A-Level Math)? You should also have covered it in GCSE Math (especially if you did the higher tier).
Uplink help: Check out the Guide or FAQ.

Latest Uplink patch is v1.55.
User avatar
shinygerbil
level5
level5
Posts: 4667
Joined: Wed Dec 22, 2004 10:14 pm
Location: Out, finding my own food. Also, doing the shinyBonsai Manoeuvre(tm)
Contact:

Postby shinygerbil » Tue Mar 11, 2008 12:32 am

I remember covering that sort of stuff in great detail in P1, indeed. But it was taught before that, I'm sure of it.
Here is my signature. Make of it what you will.

Image

Return to “General”

Who is online

Users browsing this forum: No registered users and 15 guests