SRCDS Steam group


Horrible FPS drops
#1
BASIC INFO
Server OS: Ubuntu 32-bit 8.1 (intrepid) 2.6.27-11 -generic kernal
Processor: Xeon Quad X3220 2.4ghz
Ram: In GB. 2Gb
Game(s): SRCDS-CS:S
Start Up Command:
#!/bin/sh
echo "Starting Cs:Source Server"
sleep 1
screen -A -m -d -S synergy-one ./srcds_run -console -game cstrike +map de_dust2 +maxplayers 11 -tickrate 101 -autoupdate +exec server.cfg +ip 193.33.186.101 +port 27015 +mp_dynamicpricing 0 -tvmasteronly -pidfile srcds.pid
Admin Mods: EDAdmin

Hi, first of all I'm a complete newcomer to Linux, but I'm (slowly) getting better, I've got 4 SRCDS's with source TV's (all stripped down with settings suggested on this forum, such as snapshot rate 20 etc). All 11 slots. I run 4 idlers on +20 nice value. And my source servers at 0 nice. If I move them from 0 then the FPS drops to 250 constant instead of 965~. The kernal is standard, and even though i have a quite low load, the FPS stability is horrible.

[Image: graph.php?id=6897]

I am considering recompiling the kernal, judging from what I have read, I also tried the tutorial to use cronjobs to change the nice value of my servers (it didnt work Sad), and as mentioned before when I have changed the nice value of the srcds_i686 (with sudo renice -10) then the fps drops to 250.

I really would appreciate any help, thanks

Christy,

EDIT: The four SRCDS's are the only things running on the server, and none of them are affinity/taskset set, also the nice value for the SRCDS's increases to around 5~8 when people join the server!
Reply
#2
dont use nice, it is completely useless, you must use chrt but system automatically using nice ? strange ..., and try without plugins and sourcetv, how your fps are stable then
Reply
#3
Jur1cek Wrote:dont use nice, it is completely useless, you must use chrt but system automatically using nice ? strange ..., and try without plugins and sourcetv, how your fps are stable then

Hey, thanks for the reply, I've just taken off sourceTV, EDAdmin and the Sv_download (didn't mention that) and the FPS is ALLOT more stable, please ignore the part before were the FPS/time curve passes the "SYNERGY" part as I had my VNC open to the server :*. I'm now going to experiment with the combination of enabling sourceTV, EDAdmin and the Sv_download. And FPS testing them Smile


The graph isn't finished yet, but I have linked it bellow.

[Image: graph.php?id=6997]

http://fpsmeter.fragaholics.de/p,view;6997.html
Reply
#4
I can tell you already, SourceTV is the cause. It happens across all linux servers, as soon as its enabled it completely destroys all fps stability. Add everything straight away without TV and it will remain the same. You mentioned using VNC, id recommend not using a desktop on linux and going all CLI.

You could stablise the FPS further by doing a kernel recompile using a realtime patch and getting the chrt script working.
Reply
#5
Yeah, my server without EDAdmin and sv_download doesthe exact same,

This is with source TV on and recording.
[Image: graph2.jpg]

my source TV is needed as we need it for official games :[

Settings:

tv_enable "1"
tv_port "27021"
tv_name "SYNERGY.TV PORT:27021"
tv_maxclients 10
tv_title "SYNERGY.TV PORT:27021"
tv_snapshotrate 20
tv_relayvoice 0
tv_maxrate 1000

Would this help FPS stability?

tv_enable "1"
tv_port "27021"
tv_name "SYNERGY.TV PORT:27021"
tv_maxclients 1
tv_title "SYNERGY.TV PORT:27021"
tv_snapshotrate 20
tv_relayvoice 0
tv_maxrate 500
Reply
#6
have you done any optimizations in the kernel? if not, try e.g. my howto (see the signature)...
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
#7
I'm going to bump this because i have the exact same problem, and the graph looks like the first post with SourceTV disabled. It runs at 1000FPS ubuntu Stock with 10 players on.

I've tryed chrt to run it in realtime, but it doesnt change anything. Idealy i would want FlatLineLibs, but i can't find them anywhere and DiSTANT isn't responding to anything...
Reply
#8
Why do you want libs? They don't fix the problem. The problem is the game engine code itself.

FPS is calculated by 2 syscalls, so unless you're running a bunch of shit (usb drivers eat up time polling for device status) you're never going to get stable results.
http://leaf.dragonflybsd.org/~gary

“The two most common elements in the universe are hydrogen and stupidity.”








Reply
#9
That's not true. you can achieve already much with optimizing the linux kernel, see e.g. my howto linked in the signature. It is true that the engine has some design flaws, but they can be fixed with some external lib. But I am not sure if distants lib really does this unless he really changed his approach (I have his code in an early state of development). sorry distant, I mean no offense :-)

PS: usb drivers can safely be deactivated in kernel, no server really needs usb!
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
"PS: usb drivers can safely be deactivated in kernel, no server really needs usb! "

Will disabling make a dramatic change to srcds? Because idealy i would need it for KVM?

Also i am in the middle of doing you optimisations, however the guide isn't intended for debian. Nearly there thoughToungue, i'll let update this thread with my new results in a day.

BehaartesEtwas what are the external libs? Smile
Reply
#11
Chas Wrote:"PS: usb drivers can safely be deactivated in kernel, no server really needs usb! "

Will disabling make a dramatic change to srcds? Because idealy i would need it for KVM?
This is good question. Use your head when doing stuff.

It's is like running Notepad on Windows server. Obviously running Notepad won't make the Windows server run any faster, but as obviously *not* running Notepad on Windows server won't make the server any faster either. It's the same thing with KVM support in Linux.

I think BehaartesEtwas' point originally was that if you have your server located at ISP hosting facilities, you won't be needing USB support there. Then it can be deactivated for perfection.
Reply
#12
Right well after using the custom RT kernel + patch, with the optimisations. It has made no difference, and i am running chrt + i can confirm it is using the RT kernel.

Any Tips?

Before (Ubuntu Stock):
[Image: srcds2.jpg]

After(Optimisations RTkernel):
[Image: srcds.jpg]
Reply
#13
Make sure power management is disabled in the BIOS (speedstep)

You could also be running into SMI interrupts if you're running intel.
http://leaf.dragonflybsd.org/~gary

“The two most common elements in the universe are hydrogen and stupidity.”








Reply
#14
do you use 32 bit? in my experience, 64 bit is better (at least for srcds, maybe not for hlds). also you could try all those things I wrote in the playing around and trouble shooting sections of my howto...
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
#15
There is no difference in 32bit to 64bit, as the binaries are still 32bit. There are no vsyscalls for 32bit binaries, so you do a full context switch into the kernel for gettimeofday()

What clocks are you using? What hardware? Is CPUSpeed enabled?
http://leaf.dragonflybsd.org/~gary

“The two most common elements in the universe are hydrogen and stupidity.”








Reply


Forum Jump:


Users browsing this thread: 4 Guest(s)