SRCDS Steam group

Dual cpus
I have a dual xeon 3.2 with 2gb ram. Running on a unmodified kernel. Centos 3.4

My question is if I run two 32 man 66TR servers will it be able to take the load ? I'm currently running one server and one of the Cpu's is reaching 90% load on round start and a bit of degradation of TR in the beginning. If I run the second server will the second cpu kick on or will it use the already loaded cpu ?

Linux Justice 2.6.9-34.0.2.ELsmp #1 SMP Fri Jul 7 19:52:49 CDT 2006 i686 i686 i386 GNU/Linux
linux "should" balance it but if it doesn't you can use the taskset command to set a pid to run on a certain processor alone.
Would you be kind enough to show a linux noobie how Smile
type "ps aux" that will list your processes, find your pid for the process you want to set.

then type "taskset -pc thepidyouwant" it will output that the affinity is currently on processors 0-x depending on how many processors you have.

then type "taskset -pc whichprocessoryouwant thepidyouwanttosettotheprocessor"
ie i want to assign pid 21556 to procs 0 and 1 i do "taskset -pc 0,1 21556"

you can then to "taskset -pc thepidyoujsutset" and it will show you what processors the process is assigned to.

if you have a HT enabled server, the virtual processor will show as a logical one, you can assign something to this but it will run like crap so you need to figure out the numbering on your own and make sure you don't assign it to wrong one(s). you can write a script for this so that it will assign it when you start your server.

if you screw up just quit the process and restart, if you screw up your server doing this (i don't see how but you never know) don't blame me.
[iha81@Justice ~]$ ps aux | grep iha81
iha81 27847 0.0 0.0 6132 1588 ? Ss Sep22 0:18 SCREEN -A -m -d -S css ./srcds_run -console -verify_all -game cstrike +ip *.*.*.* -port 27015 +map de_dust2 -tickrate 66 -pingboost 3 +fps_max 1000 +maxplayers 32
iha81 27848 0.0 0.0 5044 1128 pts/2 Ss+ Sep22 0:00 /bin/sh ./srcds_run -console -verify_all -game cstrike +ip *.*.*.* -port 27015 +map de_dust2 -tickrate 66 -pingboost 3 +fps_max 1000 +maxplayers 32
iha81 2084 50.0 14.2 388196 294896 pts/2 Rl+ Sep23 2382:08 ./srcds_i686 -console -verify_all -game cstrike +ip *.*.*.*.* -port 27015 +map de_dust2 -tickrate 66 -pingboost 3 +fps_max 1000 +maxplayers 32
root 23641 0.0 0.1 8288 2244 ? Ss 02:23 0:00 sshd: iha81 [priv]
iha81 23643 0.0 0.1 8420 2576 ? S 02:23 0:00 sshd: iha81@pts/0
iha81 23644 0.0 0.0 5868 1436 pts/0 Ss 02:23 0:00 -bash
iha81 23688 0.0 0.0 3420 752 pts/0 R+ 02:29 0:00 ps aux
iha81 23689 0.0 0.0 4760 632 pts/0 R+ 02:29 0:00 grep iha81
[iha81@Justice ~]$

[iha81@Justice ~]$ taskset -pc 2084
pid 2084's current affinity list: 0,1
[iha81@Justice ~]$ taskset -pc 0 2084
pid 2084's current affinity list: 0,1
pid 2084's new affinity list: 0

As you can see when i do ps aux i get a few things involving srcds. I set the affinity to 0 as in the first processor, Did I choose the right pid or should i set affinity to the screen or srcds_run ? And no, I have HT disabled. I had it enabled but it made everything go crap. Right now I have two logical processors. 0 and 1. I will run the second srcds on the second processor and hope to god that nothing goes wrong. As always I am thankful for your help as you have helped me more than a few times and I never will blame you since your intentions are always good.

Would You be kind enough to show me how to set a script ? right now this is my startup script.

[iha81@Justice srcds]$ cat CSS
echo "Starting Cs:Source Server"
sleep 1
screen -A -m -d -S css ./srcds_run -console -verify_all -game cstrike +ip *.*.*.* -port 27015 +map de_dust2 -tickrate 66 -pingboost 3 +fps_max 1000 +maxplayers 32

Thank you in advance.
you got it right, you don't want the screen set but the actual srcds_run, so in this case it is 2084, note that if you kill the server and restart it again, it will have a NEW pid.

i have to see if i still have my script because i don't use it anymore i don't run that many servers these days. what it does is essentially, start the server, writes the pid to a file, then taskset sets the pid file to whatever procs you want.

some of the real linux gurus may be able to write this from memory but i have to look it up as i'm just a linux hack. Big Grin

Forum Jump:

Users browsing this thread: 1 Guest(s)