The International Simutrans Forum

Simutrans Extended => Simutrans-Extended paksets => Pak128.Britain-Ex => Topic started by: jamespetts on April 10, 2012, 10:45:52 AM

Title: A question of scale
Post by: jamespetts on April 10, 2012, 10:45:52 AM
Recent testing with the server has shown that, aside from the private car issues discussed elsewhere and that can be worked around, the main constraints on performance are not map size, per se, but the quantity of player network infrastructure and cities.

Given that early reports with Bernd Gabriel's braking physics code, which is due to be incorporated into the next major release, are that it works much more pleasantly at larger scales, I wonder whether there is something to be said for changing the scale for the next release of Pak128.Britain-Ex from 250m/tile to 200m/tile. The next server game would have the same number of cities as the present server game (perhaps better clustered), but would be proportionately larger to accommodate the larger scale. The stop radius would remain as it is, at 3 tiles.

This should allow, not only for more subtle use of braking physics, but also for better and more intricate local transport infrastructure, which should be helpful when making use of The Hood's excellent Tube trains that he has produced recently, as well, hopefully, as giving greater prominence to local 'buses.

I should be interested in any views on the topic.
Title: Re: A question of scale
Post by: Carl on April 10, 2012, 11:31:46 AM
I think that in general this would be a good decision, especially with respect to local transport infrastructure.

I don't think one would notice too much difference between the braking physics behaviour at 250m and 200m, however. It's only when you get up to 400m/500m+ per tile that the braking distances start to "appear" too short.
Title: Re: A question of scale
Post by: ӔO on April 10, 2012, 04:46:43 PM
400MB map size is about the limit for my computer. 300MB preferable.
For me, the current scale is good.
Title: Re: A question of scale
Post by: AP on April 10, 2012, 07:52:20 PM
I also have concerns about map size / computing power required to run them. Especially since experimental seems rather more demanding in that way than does standard. My computer was top-of-the line a few years ago, but no longer, I know I'm not the only forum user in that position.

I assume there is a way to work backwards from computer specs to get the best 'accessible' map size which can be a) loaded, and b) run.
Title: Re: A question of scale
Post by: jamespetts on April 10, 2012, 09:37:27 PM
From what I can gather so far, the actual size of the map has much less impact on performance and memory usage than the intensity of players' networks and the number of cities (which is closely related to the former). Large, open areas cost relatively little, so far as I can make out.
Title: Re: A question of scale
Post by: ӔO on April 10, 2012, 09:42:02 PM
map size has a more direct relation to memory consumption.
A larger map consumes a lot more memory.

The current server map eats around 650MB of memory on my system.
Title: Re: A question of scale
Post by: jamespetts on April 10, 2012, 09:53:44 PM
The memory consumption is affected more by player networks and cities than open spaces from what I understand.
Title: Re: A question of scale
Post by: ӔO on April 10, 2012, 10:50:52 PM
ah, it's probably both, in that case.
Title: Re: A question of scale
Post by: Carl on April 11, 2012, 07:15:10 AM
One relevant point is that most people's system is limited by their CPU, not their memory, and it's certainly larger populations and bigger networks -- rather than bigger maps -- which eat up the CPU.
Title: Re: A question of scale
Post by: Markohs on April 11, 2012, 01:09:55 PM
If you are having CPU problems, maybe you can adopt the multithreading display code that's already on simutrans trunk, so you get the time spent on displaying the world reduced.

It's all in simview.cc, defining MULTI_THREAD=2 or 4, depending of the number of CPU's your system has. This code is still to being improved, identifying extra places where to apply threading, but should be stable enough now for you to test.