SRCDS Steam group


How to stable FPS? / Avoid FPS drops
#1
Question 
System:
Core i7 920, 8GB
Ubuntu 9.04 minimal

Hopefully some on the "guru's" on this forum may help with my fps drops Smile

My servers are running fine at 1000FPS but sometimes the FPS are dropping under 50 --> http://www.fpsmeter.org/p,view.html?arg[0]=29785

I've already tried everything from http://wiki.fragaholics.de/index.php/EN:Linux_Kernel_Optimization // http://www.howto-cs16-root.de/gen_kernel.htm and some other websites.

Nothing works. I always have these FPS drops when more than 5 people are playing on the server. For testing purposes I only had one srcds running.

Kernel versions I tried: (with and without RT patch)
- 2.6.26-8
- 2.6.31.2
- 2.6.31.6

- Current scheduler is: FIFO
- srcds is running on priority 98

- Already tried to enable or disable dynamic ticks.
- Already tried the idlers on one or all cores
- Already tried to disable hyper threading

SourceTV is disabled!

Many thanks in advance.

If you need further information just ask Smile
Cheers,

Ronny
nice-servers.com
Reply
#2
Your server specification matches Hetzner's pretty much, am I right? Where are you hosted?

I've got the same server (EQ4 at Hetzner, i7 920, 8 GB RAM, 2x750 GB HDD, best in Europe - mind me advertising) and I have solid 1000 fps (but there's on going debate about that Smile): http://www.fpsmeter.org/p,view;29521.html

I'm using the default Debian kernel (2.6.26-2-amd64 w/ 64 bit) without SourceTV. I don't use chrt or any of the other optimizations in fragaholic's wiki. I have the default kernel without any boosts other than fps_max 0.

There are sometimes FPS drops, but it might not be so bad after all. I couldn't see your server's graphs, so I can't tell how many drops you have. There's probably some update going on at fpsmeter.org right now.

Are you sure you've configured RT patches properly? With the RT patches it shouldn't be possible the server to do frame longer than ~1 ms. If it does, then it's quite much impossible to fix because the server is having real time access to CPU (which means something like guaranteed to run every 1 ms) and it's still taking longer than 1 ms to calculate the frame - in your case up to 20 ms, which means 50 fps.

I'm not sure if you also need to set the (soft) IRQ handlers to realtime priority of 99 too (higher than srcds!). That way the IRQ handlers, which have been brought to userspace(?) for purpose(?), are run also real-time are guaranteed to handle network data at least 1000 times per second (or at least quite very very often). I'm not sure about if this is required or whether the IRQ handlers are by default run 100000(!?) times per second or so. It might be that somebody just invented this chrt command by accident and interwebs took over and now we're in a belief that it's good thing. I've never heard anybody explain why ksoftirqd should be set to real time - or better yet, why it in the first place must be configured to be SOFT irq.

Do you have lags on the server or are you just seeking for perfection?
Reply
#3
Yes, the server is from Hetzner (EQ4) hosted in RZ10. I've got another one in RZ9 but it's not for gameservers. Maybe I should test the gameservers on RZ9 one...

Maybe I should give Debian a try but this shouldn't make any difference at all. Anyways, I will try it tomorrow Smile

Also I will test around a bit with the RT priorities. And yes, the rt patch works fine.

"Do you have lags on the server or are you just seeking for perfection?" --> perfection Smile

Btw, it would be nice if you could upload the default config file of your debian kernel.
Cheers,

Ronny
nice-servers.com
Reply
#4
I noticed a difference on that machine using ubuntu and debian. The standart kernel with ubuntu brings you to max 920 the debian 980 fps. But that few fps doesnt really matter.
This spikes looks like you are running a mysql or sort of on that server. Anyway if i have to choose between debian and ubuntu for a server I always would take debian because it is designed to be stable and not to be the newest.
Reply
#5
(11-20-2009, 05:07 AM)Ronny Wrote:  Btw, it would be nice if you could upload the default config file of your debian kernel.

Here it is ("cat /boot/config-2.6.26-2-amd64"): http://pastebin.ca/1678896

I hope you don't hacker my server now that you got the kernel configuration Sad
Reply
#6
is that a clanserver? or public? i am thinking about special plugins that creates the drops, thats normal....
Reply
#7
Another thought: Have you disabled the cool and quiet feature?
try running this as root:
Code:
cpufreq-set -g performance

I noticed that cpus do not scale up their frequency fast enough for sourcegames. The load comes in peaks. So the cpu trys scaling up when it detects that it needs more power. By the tiome it scaled up the load peak is gone and it scales back. This never happens fast enough so you get fps drops.
Reply
#8
What I did:

- Stopped all other running services (atd, cron, dbus...) which may conflict with srcds even there weren't many (no webserver, no database server).

- Tried my other server in Hetzner's computer centre #9 -> same issues.

Peter:
Doesn't matter. Same issues on public an clanservers with and without plugins.

Terrorkarotte: My FPS are at ~990 on Ubuntu so thats not the issue.

CSS: Thanks I will give it a try! Btw the forum will destroy the fpsmeter link so you have to copy and paste it: http://www.fpsmeter.org/p,view.html?arg[0]=29785
Just tried the debian kernel -> no success.

I'm now doing some testing with counterstrike source. Maybe something is buggy in team fortress 2 like mentioned in this thread http://forums.srcds.com/viewtopic/11622 .
(11-20-2009, 06:08 PM)Terrorkarotte Wrote:  Another thought: Have you disabled the cool and quiet feature?
try running this as root:
Code:
cpufreq-set -g performance

I've disable it completly in the kernel config and already checked the cpu frequency which is running at maximum.
Cheers,

Ronny
nice-servers.com
Reply
#9
"To share this measurement use the following link: http://www.fpsmeter.org/p,view;29785.html" - I've put this there for a reason :-)

do you have other servers running on the same root? try with one first. don't mix srcds and hlds (never ever!), and don't go above 2 servers per core.

those 3 drops are not so bad, but they might be actually noticed by the players because they go below 100 fps (which is the tick rate I suppose?). for a public server this will be perfectly fine, nobody will notice. for a war server this will be still very good while not perfect. my own servers don't run so much better, especially the public servers have similar drops... note that even players joining the server might produce some drops (e.g. if they down/upload some stuff).
http://www.fpsmeter.org
http://wiki.fragaholics.de/index.php/EN:Linux_Optimization_Guide (Linux Kernel HOWTO!)
Do not ask technical questions via PM!
Reply
#10
Thanks for the hint with the link BehartesEtwas Smile

I've only running one srcds atm. The tickrate is 66 (fixed in TF2 engine)
Cheers,

Ronny
nice-servers.com
Reply
#11
funny is that "css" compiled all the bad things in the kernel but the fpsmeter still looks more than good? why? because of amd? he got no drops ... e.g. CPU Frequency scaling > normally i would turn it off :-(
Reply
#12
testing with counterstrike source resulted in the same like in tf2. fps drops every few minutes.
Cheers,

Ronny
nice-servers.com
Reply
#13
@ Peter
The config I linked earlier is the default kernel config of Debian 5.0.1, which is 2.6.26-2-amd64 (at least this is the way Hetzner had it after installation).

At the time I measured the very steady 992 FPS stats [ http://www.fpsmeter.org/p,view;29521.html ] (note that it's the premium measurement with 1 second interval) I had CPU scaling enabled. It didn't seem to have any effect on anything. I've got it disabled now because I'm not environmentalist.

The biggest effect on the FPS is SourceTV. It kills the FPS completely and it's spiking very often and in general the FPS varies around 800-950.

I think Ronny's got the same setup that I've got but he's just been unlucky with the measurements. Try again couple times more and you'll end up having the perfect sample (hehe, this is the best way to improve the server, exploiting the meter Smile).
Reply
#14
(11-21-2009, 01:14 AM)css Wrote:  Try again couple times more and you'll end up having the perfect sample (hehe, this is the best way to improve the server, exploiting the meter Smile).

Am I right that you also have fps drops but just got some lucky 5 minutes with stable fps? :-)
My lucky 5 minutes http://www.fpsmeter.org/p,view;30078.html Toungue

But most of the time I still have the FPS drops. I have tried to stop every not needed daemon / process without any major success. [Image: htop.jpg]
Cheers,

Ronny
nice-servers.com
Reply
#15
(11-21-2009, 01:33 AM)Ronny Wrote:  
(11-21-2009, 01:14 AM)css Wrote:  Try again couple times more and you'll end up having the perfect sample (hehe, this is the best way to improve the server, exploiting the meter Smile).
Am I right that you also have fps drops but just got some lucky 5 minutes with stable fps? :-)
My lucky 5 minutes http://www.fpsmeter.org/p,view;30078.html Toungue

That's right. Welcome to 1000 FPS servers club. I thought you didn't have what it takes to administrate a 1000 FPS server, but now looking at the hard evidence I can see you have the same super stable server as I do without any FPS drops.

Good work Big Grin

PS. It really pays off to be premium member. It's faster and easier to get the solid FPS line in the 5 minute graph than trying to do those 1 hour long measurements. Highly recommended Wink
Reply


Forum Jump:


Users browsing this thread: 5 Guest(s)