You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!

Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.

If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.

Having a problem logging in? Please visit this page to clear all LQ-related cookies.

Introduction to Linux - A Hands on Guide

This guide was created as an overview of the Linux Operating System, geared toward new users as an exploration tour and getting started guide, with exercises at the end of each chapter.
For more advanced trainees it can be a desktop reference, and a collection of the base knowledge needed to proceed with system and network administration. This book contains many real life examples derived from the author's experience as a Linux system and network administrator, trainer and consultant. They hope these examples will help you to get a better understanding of the Linux system and that you feel encouraged to try out things on your own.

I run game servers for hl2. My servers only get 50fps and its supposed to be getting at least 100 with my settings. Below are some instuctins on raising Kernel timer. I tried looking for include/asm-<arch>/param.h.
but there are so many close looking files I dont wanna touch if im not sure. Also if I open param.h all lines are commented out.

Can anone help?/

Linux Kernel Timer Instructions

Thanks to triphammer in the STEAM Linux SRCDS Forum

You need to do a custom (re)compile of the linux kernel in order to change kernel interruptability / timer.

Since Kernel 2.6.14 you change the HZ with "make menuconfig", just go to: "Processor type and features" > "Timer frequency (XXXXX HZ)". The default HZ for 2.4 Kernels is 100. You can also change the HZ via the "USER_HZ" variable located in: include/asm-<arch>/param.h.

param.h:

define USER_HZ 100 /* .. some user interfaces are in "ticks" */

More along the lines of your question, you can also set the kernel timer frequency by chaning the HZ variable in the same file

define HZ 1000 /* Internal kernel timer frequency */

Also:

+ config HZ
+ int "Frequency of the Timer Interrupt (1000 or 100)"
+ range 100 1000
+ default 1000
+ help
+ Allows the configuration of the timer frequency. It is customary
+ to have the timer interrupt run at 1000 HZ but 100 HZ may be more
+ beneficial for servers and NUMA systems that do not need to have
+ a fast response for user interaction and that may experience bus
+ contention and cacheline bounces as a result of timer interrupts.
+ Note that the timer interrupt occurs on each processor in an SMP
+ environment leading to NR_CPUS * HZ number of timer interrupts
+ per second.
+
endmenu

For a server fps to cater for you high tickrate under Linux, you either need to recompile your 2.4 Kernel, with its Kernel timer resolution changed, but the easiest and probably best course of action is to use the 2.6 Kernel and change the "USER_HZ" variable, (I would suggest starting at 500 and seeing what happens before experimenting with other numbers) which will enable higher server fps on your Linux server.

I am not sure if this is in the 2.4 kernel, but I think all you have to do is enable "Enhanced Real Time Clock Support" (It's under Charecter devices in the 2.6 kernel) then as root, run the following command

Code:

echo 1024 > /proc/sys/dev/rtc/max-user-freq

Sorry if this doesn't apply to what you are asking.

regards,
...drkstr

**edit**
you will need to add this to your rc.local if you want it to keep when you reboot.