Recompilar Kernel Ubuntu y problemas con SRCDS

Buenas señoras y señores, antes de nada dar las gracias por la ayuda que me podáis dar, llevo varios días buscando por internet y no he sido capaz de hacerlo. Os expongo mi problema, necesidad y lo que dispongo.

Actualmente tengo varios servidores que usan el motor SRCDS y estos servidores vienen con un capado desde valve, que gracias a la comunidad se ha podido eliminar, cosas como pasar de un tickrate de 30 a uno de 100, subir los rates de 30k a 100k, y la que me interesa, subir los fps del servidor.

Todo lo tengo mas o menos controlado, excepto el tema de los fps del servidor (no confundir con los fps de los clientes o jugadores). Para poder subir estos de 30 capados a 1000, uso el comando "sm_cvar fps_max 1500" y con esto desbloqueo esos 30 y subo a 500-600 el caso es que por las características físicas del hard (cuatro cores a 3.2Ghz y 4GB de ram) solo teniendo un server en marcha y con un solo jugador (estoy testeando luego ya se ira subiendo) no me cuadran los números y debería ir con soltura a +1000fps.

Leyendo por ahí veo que existe un comando en opciones de lanzamiendo del SRCDS que ayuda con este problema "-pingboost 2 +sys_ticrate 1500" y que para que funcione correctamente es necesario hacer una modificación en el kernel de ubuntu, para que este pase de trabajar de sus genéricos 100Hz a 1000Hz.

No soy capaz de hace este ultimo cambio, alguno de vosotros le ha tocado alguna vez luchar con este tema?
Dentro del kernel, el comando a modificar seria si mal no he entendido este:
# define USER_HZ 100 /* .. some user interfaces are in "ticks" */
a
# define USER_HZ 1000 /* .. some user interfaces are in "ticks" */
y tras hacer este cambio recompilar el kernel

Soy usuario novicio en linux y se me atraganta bastante, si alguien pudiera guiarme un poco en plan para tontos estaría muy agradecido.

Saludos y gracias.
el simbolo # lo que hace es ignorar esa linea... por eso realmente no has cambiado nada.
el caracter # lo que hace es 'comentar' esa linea, por lo que el compilador la omite.

necesitas quitarla para asi funcionar.

ejemplo rapido:
# imprimir por pantalla 20 → no devuelve nada
imprimir por pantalla 20 → imprime en pantalla 20
think escribió:el caracter # lo que hace es 'comentar' esa linea, por lo que el compilador la omite.

necesitas quitarla para asi funcionar.

ejemplo rapido:
# imprimir por pantalla 20 → no devuelve nada
imprimir por pantalla 20 → imprime en pantalla 20


Os agradezco la ayuda, ya sabia lo de los comentarios y que se ignoran los precedidos por #, ha sido un simple copiar pegar como ejemplo y no lo he borrado. Finalmente he recurrido a un kernel lowlatency y estoy haciendo pruebas con el. lo ideal seria saber como recompilar mi propio kernel de ubuntu server 4.2.0-25 cambiando solo la frecuencia de trabajo de 100Hz a 1000Hz. Esa linea que os he puesto de ejemplo no se donde estaría en esta versión de kernel de linux 4.2.0-25 en previas si que esta.
En c # no comenta, son 'comandos' para el compilador, ya sea la definicion de una variable, una condicion o una macro.

Buscate una guia de recompilar el kernel en ubuntu, descomprime las fuentes y busca esa linea en el codigo, la reemplazas. Compila e instala el kernel nuevo. Done
/* tanto en C como en Java y quizás en algún otro */


:)
5 respuestas