SRCDS Steam group


Libsource.c - Linux srcds boost library
#1
I have released the source code for my linux shared library (aimed at reducing the overhead of system calls) at the address below. Please go easy on me, as this is my first ever release/attempt at doing something of this nature.

Your constructive criticism is welcome and appreciated.

http://padgaming.com/libsourcec-open-source-srcds-shared-library

**Update**
With some major modifications made to my library, I was able to get an ultra stable version. I have it currently running on my public server.

[Image: padgaming_1k_full_99.6qi.PNG]


I idle in #Sourcekernel if you need to bounce questions off me.

Cheers

-DiSTANT
[Image: banner.php?t=2&bg=002244&amp...p;id=82023]

[Image: banner.php?t=2&bg=002244&amp...p;id=82024]
Reply
#2
can you give some comparative measurements with my fps-meter?
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
#3
BehaartesEtwas Wrote:can you give some comparative measurements with my fps-meter?

I was hoping other people would do this. I want to see it on a whole range of boxes. However, please note that it still does not handle SRCTV very well. Modifications need to be made to account for sourcetv fps jitter.
[Image: banner.php?t=2&bg=002244&amp...p;id=82023]

[Image: banner.php?t=2&bg=002244&amp...p;id=82024]
Reply
#4
This is what I get when I run the lib with idler and chrt.

(Full Public Server)

[Image: padgaming_2k_99qi.PNG]
[Image: banner.php?t=2&bg=002244&amp...p;id=82023]

[Image: banner.php?t=2&bg=002244&amp...p;id=82024]
Reply
#5
this must be a modified version of the lib, as you get > 1000 fps... And for my taste the fps are a little bit too stable not to rise the suspicion that this is an artefact. you really have to take care that you do not create any (even indirect) loops between usleep and gettimeofday. if you somehow couple gettimeofday to usleep you can achieve absolute stable fps, but this would be a fake of course (I have tried this just for fun) ;-)

what kernel do you use? how many other servers are running on the hardware? can you post the source code of exactly that lib used for this graph?
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
#6
BehaartesEtwas Wrote:this must be a modified version of the lib, as you get > 1000 fps... And for my taste the fps are a little bit too stable not to rise the suspicion that this is an artefact. you really have to take care that you do not create any (even indirect) loops between usleep and gettimeofday. if you somehow couple gettimeofday to usleep you can achieve absolute stable fps, but this would be a fake of course (I have tried this just for fun) ;-)

what kernel do you use? how many other servers are running on the hardware? can you post the source code of exactly that lib used for this graph?

Yes, I modified the lib for higher fps.

Code:
Linux nofatties.biz 2.6.24 #1 SMP PREEMPT Sat Dec 20 15:27:21 CST 2008 i686 i686 i386 GNU/Linux

As you can see I'm not using a realtime kernel. I have applied the -ck patchset and created a kernel custom config.
[Image: banner.php?t=2&bg=002244&amp...p;id=82023]

[Image: banner.php?t=2&bg=002244&amp...p;id=82024]
Reply
#7
Please refer to the graph edited in on the initial post. I have made some major modifications and I am very satisfied with the results.
[Image: banner.php?t=2&bg=002244&amp...p;id=82023]

[Image: banner.php?t=2&bg=002244&amp...p;id=82024]
Reply
#8
Wow Do you have the modified version on your website yet? I looked the version you have still looks the saem as the old one. blaine and myself also tested this on diff systems even with stock kernel. His stock kernel was able to produce about the same usage as one configured for 1000hz. Mine however lowered average cpu usage srcds normally runs @ 2% idle 1000fps match server. With the module loaded it shows 1% with no jumps it also reduces loaded servers as well my iceworld normally consumes 18-29% now only uses 15-25% with the same amount of people. Tf2 was a small improvment for me however not much diff from not running it.
*Windows lack of output*
You: Hey, I want to run this program!
Windows: Ok.. It crashed... Now what? Give up?
You:...wtf...
*linux output helpful?*
You: ./My_program
Linux:...Failed!...oo kitties!
You:...wtf...
Reply
#9
afterhoursgaming Wrote:Wow Do you have the modified version on your website yet? I looked the version you have still looks the saem as the old one. blaine and myself also tested this on diff systems even with stock kernel. His stock kernel was able to produce about the same usage as one configured for 1000hz. Mine however lowered average cpu usage srcds normally runs @ 2% idle 1000fps match server. With the module loaded it shows 1% with no jumps it also reduces loaded servers as well my iceworld normally consumes 18-29% now only uses 15-25% with the same amount of people. Tf2 was a small improvment for me however not much diff from not running it.

Nah, I don't have it on my site. I wasn't going to release it because I thought no one cared. To be honest, I wasn't even sure if people had downloaded the first one. I guess if you want it, pm me on irc.
[Image: banner.php?t=2&bg=002244&amp...p;id=82023]

[Image: banner.php?t=2&bg=002244&amp...p;id=82024]
Reply
#10
I have shown it to alot of people. They have had trouble getting it to work however on some systems. But the majority see it as an easy way to get very stable fps for little cpu. Personally I think its great someone actually did this.
*Windows lack of output*
You: Hey, I want to run this program!
Windows: Ok.. It crashed... Now what? Give up?
You:...wtf...
*linux output helpful?*
You: ./My_program
Linux:...Failed!...oo kitties!
You:...wtf...
Reply
#11
how do u use distant lib? wget blahblah/distantslib.tar?
Reply
#12
Ryan Wrote:how do u use distant lib? wget blahblah/distantslib.tar?

This lib is in it's alpha stage. When I actually release a full version, I will have a Makefile and I will package it correctly. But yes, wget the .tgz file and unpack it. Then follow the directions in the source code to compile it.
[Image: banner.php?t=2&bg=002244&amp...p;id=82023]

[Image: banner.php?t=2&bg=002244&amp...p;id=82024]
Reply
#13
This make fps stable?
Can you release some version to hlds (1.6)?

Thanks,

kERPLUNK
Reply
#14
what is the best patch for centos 5? i tried using the fragholics wiki and it got stuck on "mkinitramfs -o /boot/initrd.img-2.6.26.8-rt16 2.6.26.8-rt16" As of right now i am only allowed to run 300 FPS servers.
Reply
#15
Ryan Wrote:what is the best patch for centos 5? i tried using the fragholics wiki and it got stuck on "mkinitramfs -o /boot/initrd.img-2.6.26.8-rt16 2.6.26.8-rt16" As of right now i am only allowed to run 300 FPS servers.

I have found the Zen-sources.org patchset to be nice for CentOS. On CentOS 5 you need to run these commands to build your kernel

Code:
make bzImage
make modules
make modules_install
make install

Then once those are complete you will need to modify it so that grub boots to your new kernel. Ignore the mkinitramfs -o /boot/initrd.img-2.6.26.8-rt16 2.6.26.8-rt16 in his guide (that is specific to his flavor of linux). The "make install" will copy your initrd image to the /boot/initrd.img-2.6-xxx
[Image: banner.php?t=2&bg=002244&amp...p;id=82023]

[Image: banner.php?t=2&bg=002244&amp...p;id=82024]
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)