Administration > Tech talk

Signals

(1/3) > >>

Dobro:
Are the path signal more demanding to server system resourses then others (in particular block signal)?
Did they activate pathfinder evrytime when any train come in tile with that path signal?
Or mey be they finding ( and then reserving ) path only in block?

imus:
I don't think the pathfinding itself is the problem. If you use presignals instead, they will also trigger pathfinding if the chosen path has a red light.
The biggest difference is that all PBS (path based signals) will reserve the track up to the next light and later need to free this. This is fine in front of stations or splits where it's actually useful.

The problem is that most people also use them on their straight tracks without splits/joins. This means that the signal not only checks if there is a train on the block in front of it (so on those 1 to 5 pieces of track between lights) but also checks if these are reserved (so double the work already). Then if a train runs over these tracks in needs to reserve those tiles + free them afterwards (rough estimate, triple the work?).

Depending on the implementation, these extra checks are mediocre to very CPU intensive. (where normal signals are very light on CPU)

My experience:
playing on openttdcoop server with 2000 trains running and 10 or more people connected to that server. No lag.
Playing on #7 here with 3 players. 20 trains on full PBS tracks causing constant reconnect taking a few seconds.

So TL;DR:
PBS is really CPU heavy and should only be used in front of stations or other shared pieces of track (although pre-signals are still preferred if you know how to use them).

PS: In some rare cases I have even seen trains stop before an empty track just because the PBS couldn't reserve the track in time.

Andreas:
I do surely agree that there is a difference in CPU load between PBS and normal (block) signals. But I don't think that this is the only reason for the lag you are experiencing on the servers. For starters there are only 2 real servers, the 'normal' ones and the 'k' servers. The rest are all virtual. Secondly all the plugins running (achievemennts, cb script, points system, admin system, login system to name a few) are not present on openttdcoop (at least not that many).

Furthermore I don't exactly know what connection N-ice servers have, but if I recall correctly #openttdcoop is hosted on the SNT (University Twente) network which has incredible speed.

In short, I do agree that it would be better to use less pbs signals (especially because they simply have no advantage over normal signals on a straight  track as you correctly point out), but blaming the whole performance difference only on PBS is taking it a bit too far. 

imus:
Sorry that I gave a bad example, I fully agree with what you say =) Except for the plugins running.
#openttdcoop also has an admin function, a full logging of EVERYTHING that happens (even which players raises/lowers which piece of land) and an IRC connection monitored by a bot similar to n-ice. Only the goal system is not used there. So there might still be some small scripts different but I don't think that really changes much.

This still does not mean that PBS is the only reason for the lag, so I stand corrected. Then again, it is probably one of the only things we are capable of changing at this moment to reduce the load. Last time in a game someone (not gonna name him here) said he couldn't be bother placing normal signals as it would lose him time to switch between the normal and PBS. Does it really hurt that much to ctrl+click those 2 to 8 signals that need to be pbs?

I have a feeling (can't prove it) that over use of PBS is similar to using ships. Causing a lot more load than wanted, so should be limited if possible without really affecting overall gameplay.

Another minor thing I noticed is how people often place signals every tile on their big lines. I don't see how this is useful. But this is probably getting off-topic now.

Kadar:
CPU load has nothing to do with the lag, or lack of RAM, not sure why we are experiencing lag. It might be the fact that I am only using a 100MB port on the K servers.

Navigation

[0] Message Index

[#] Next page

Go to full version