RT-Kernel Gameserver

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Antworten
Peter_Pan123
Beiträge: 117
Registriert: 17.08.2006 17:48:47

RT-Kernel Gameserver

Beitrag von Peter_Pan123 » 15.01.2009 07:26:57

Hallo,

macht ein RT Kernel bei Gameservern Sinn ? Welchen kann man dort am besten nehmen ? Sind alle bei kernel.org / projects > stable ? Oder nur bestimmte ?

Welche Einstellungen sind die wichtigsten > Es gibt im Netz 100 verschiedene Meinungen, welche EInstellungen im Kernel drin sein sollen, welche sind aber wirklich i.O. ? und auch sinnvoll ?

Macht es Sinn die Prozesse in der ProzessID/Priorität zu ändern, so das sie schneller bei einem RT-System verarbeitet werden ? Es gibt dazu ein Script das man irgendwie alle paar Minuten vom Cron starten lassen soll, macht das Sinn ?

Code: Alles auswählen

PIDS=`pidof softirq-hrtimer`
for p in $PIDS; do
  sudo chrt -f -p 99 $p
done

PIDS=`pidof process`
for p in $PIDS; do
  sudo chrt -f -p 98 $p
done
Gruß

Benutzeravatar
whisper
Beiträge: 3385
Registriert: 23.09.2002 14:32:21
Lizenz eigener Beiträge: GNU Free Documentation License
Kontaktdaten:

Re: RT-Kernel Gameserver

Beitrag von whisper » 15.01.2009 08:33:56

Hat sich jemand beschwert?

Ich habe einen Rootserver mit dualcore.
Dort läuft ein selbstgemachter 2.6.23 Kernel mit 1000 Ticks.
Es läuft ein Gamesserver unter wine (schluckt ziemlich viel resourcen)
und immer zwei Battlefield 2 Server jeweils 32 Bot, weiter noch ein paar für Opensource Quake3 Engines.
Desweiteren noch Teamspeak und etliche Webs mit Datenbanken. (Auch Zockertown ist da drauf)
Noch hat sich kein Gamer über schlechtes Verhalten der Gameserver beschwert.
Ich benutze keine Scripte um mit chrt die Scheduler umzuschalten.
Dein Script mit -f scheint vernünftig zu sein, obwohl -r auch reichen würde.

Also ich würde an deiner Stelle einen Kernel selber machen und den Empfehlungen der diversen Howtos speziell für den Gameserver folgen, der für dich wichtig ist. Um welchen geht es eigentlich?
Alter ist übrigens keine Ausrede, nur Erfahrung, die sich stapelt. 😉

Peter_Pan123
Beiträge: 117
Registriert: 17.08.2006 17:48:47

Re: RT-Kernel Gameserver

Beitrag von Peter_Pan123 » 15.01.2009 09:04:08

Es geht um Counterstrike und Counterstrike Source. Ich würde probieren wollen jeweils beide auf einen Root laufen lassen zu wollen. Mir gehts dabei das beide Server 1000 FPS haben. Problem zeigt sich eher bei CS1.6, da ich es nicht schaffe dort die FPS bei mehreren Gameservern konstant zu halten. Counterstrike Source ist weniger das Problem. Mir wurde gesagt > bzw kann man auch überall nachlesen das es an der Engine von HL1 liegt und deswegen man diese probs hat. Angeblich soll es aber gehen, man soll dazu das System anpassen auf das Spiel nur habe ich davon absolut keine Ahnung und weiss auch net wo ich mich reinlesen soll. Es hat sehr viel mit dem Befehl gettimeofday(); zu tun, so das was ich herausgefunden habe.
Ich selber habe nur von den RT Kernel gehlört und wollte wissen ob es eben sinnvoll ist und dazu eben in Verbindung mit dem Script. Nur habe ich wenn ich das Script anwende keine Verbesserung gesehen. DIe FPS bleiben gleich > oder schaue ich vielleicht auf die falschen Dinge ? Die eigentlich ein RT-Kernel ausmachen ?

Gruß

Benutzeravatar
whisper
Beiträge: 3385
Registriert: 23.09.2002 14:32:21
Lizenz eigener Beiträge: GNU Free Documentation License
Kontaktdaten:

Re: RT-Kernel Gameserver

Beitrag von whisper » 15.01.2009 09:21:56

Du brauchst also den typischen CS Kernel, der die mängel der alten Server Software ausgleicht.
Da liest man huptsächlich das hier:

Code: Alles auswählen

Processor type and features --->
[*] High Resolution Timer Support
Preemption Model (No Forced Preemption (Server)) --->
(X) No Forced Preemption (Server)
Ich glaube aber mit solchen Sachen bist du in Foren, die sich mit Rootserver / Gameserver beschäftigen besser aufgehoben :-)
Alter ist übrigens keine Ausrede, nur Erfahrung, die sich stapelt. 😉

Peter_Pan123
Beiträge: 117
Registriert: 17.08.2006 17:48:47

Re: RT-Kernel Gameserver

Beitrag von Peter_Pan123 » 15.01.2009 09:27:15

joa ^^

meine Frage bezog sich auch primär auf den RT Kernel

Die Diskussion über HL1 usw ist zusätzlich aufgekommen :-)

Aber wenn wir dabei sind > Du schreibst "(X) No Forced Preemption (Server)"
gibt es dafür einen Grund ?

Ich habe auch schon x mal gesehen das viele der Meinung sind "Low Latency" nehmen zu müssen ?

Macht es wirklich einen großen Unterschied ?

Mir ist klar das man diese Option nicht bei einem RT kernel hat > da sollte man logischer weise "Real-Time" nehmen.
Mir gehts jetzt um einen Std Kernel ?

Grüßerle

Benutzeravatar
whisper
Beiträge: 3385
Registriert: 23.09.2002 14:32:21
Lizenz eigener Beiträge: GNU Free Documentation License
Kontaktdaten:

Re: RT-Kernel Gameserver

Beitrag von whisper » 15.01.2009 09:32:24

War jetzt aus dem Hut gezaubert. Erleuchtung wird nur ausprobieren geben :-(
Ich habe einen std-kernel ohne RT-patch, aber wie gesagt, kein CS
Alter ist übrigens keine Ausrede, nur Erfahrung, die sich stapelt. 😉

Peter_Pan123
Beiträge: 117
Registriert: 17.08.2006 17:48:47

Re: RT-Kernel Gameserver

Beitrag von Peter_Pan123 » 18.01.2009 11:17:37

stimmt es das ein RT Kernel nix anderes ist vom Prinzip her als eine Volumentary Preemption ?

Benutzeravatar
npi
Beiträge: 567
Registriert: 03.08.2003 17:52:10

Re: RT-Kernel Gameserver

Beitrag von npi » 18.01.2009 15:13:31

Vom Prinzip her macht ein RT-Kernel für einen Gameserver keinen Sinn, denn das Ziel bei einem RT-Kernel ist, dass eine Anwendung sicher sein kann, dass wenn sie von einem Befehl verlangt, dass er genau eine bestimmte Zeit dauert, dass dieser dann auch genau diese Zeit dauert.
Das heisst oft, dass eine Zeit lang nichts gemacht wird, weil der Befehl zu schnell ausgeführt wurde: eben schneller als "Echtzeit".
Bei einem Gaming-Server willst du aber, dass die Befehle von deinem Server so schnell wie möglich ausgeführt werden. Das geht zB durch ändern der Priorität im Scheduler und Ähnliches.

gruß,
npi

Edit:
RT-Kernel werden erst durch RT-Software wirksam.
wikipedia-Artikel zur Echtzeit: http://de.wikipedia.org/wiki/Echtzeit
"Bis zur Unendlichkeit, und noch viel weiter!"
--Buzz, Toystory

Peter_Pan123
Beiträge: 117
Registriert: 17.08.2006 17:48:47

Re: RT-Kernel Gameserver

Beitrag von Peter_Pan123 » 19.01.2009 06:24:18

und wie kann ich das erreichen dasich die prio im Scheduler ändere ? ist da der nice Wert Entscheident ?

Gruß

Peter_Pan123
Beiträge: 117
Registriert: 17.08.2006 17:48:47

Re: RT-Kernel Gameserver

Beitrag von Peter_Pan123 » 22.01.2009 06:15:44

Muss bei einem RT Kernel der hrtimer aktiv sein ? Macht es SInn HPet zu aktivieren ?

Antworten