Sie sind nicht angemeldet.

1

Sonntag, 20. Februar 2011, 12:45

2 Cores für ein Gameserver nutzen?

Hallo,

ich hätt da mal ne frage..

ist es möglich 2 Cores für einen Gameserver zu nutzen?
Momentan starte ich meinen Server mit diesem Befehl..

Quellcode

1
taskset -c 0 ...

jetzt frag ich mich grade da ich ungenutzte Resourcen habe ob es möglich ist den gameserver so zu starten..

Quellcode

1
taskset -c 0 -c 1

Macht das sinn oder explodiert sonst das Rechenzentrum :D ?

Gruß fanta

Impact

Super Moderator

Beiträge: 1 276

Rootserver vorhanden: Nein

  • Nachricht senden

2

Sonntag, 20. Februar 2011, 13:43

Etwas mehr Infos wären ja nicht schlecht zB

Wo betreibst du den Gameserver.
Welches spiel hostest du.

Und in deiner speziellen Frage:
Welche Hardware besitzt du?

Wieso sollte das nicht möglich sein?

Ps. Der genau Syntax lautet so

Quellcode

1
taskset -c 0,1


Quellcode

1
2
List format uses a comma-separated list instead of a mask:
  taskset -pc 0,3,7-11 70


sprich du könntest es wenn ich richtig gelesen habe auch so machen.

Quellcode

1
taskset -c 0-1



MfG
Impact

rain

Super Moderator

Beiträge: 1 410

Wohnort: Lutherstadt Wittenberg

Beruf: Anlagenmechaniker

Rootserver vorhanden: Ja

  • Nachricht senden

3

Sonntag, 20. Februar 2011, 15:53

Das klingt ja nicht schlecht. Wie sollte dann der kompltte srcds startparameter denn aussehen wenn man den server auf 2 kerne aufteilen will?





4

Sonntag, 20. Februar 2011, 16:14

Wie oft denn noch?
- taskset ist zum Einschränken von Prozessen und nicht zum Verbessern der Performance da. Deswegen sollte man es weglassen.
- srcds und hlds haben einen Main Workerthread, der nur von einem einzelnen Core berechnet werden kann. Die anderen Threads sind nicht sehr CPU intensiv.
Webbasierender Config Ersteller: www.ulrich-block.de für CS 1.6, CSS, DODS und TF2.

Ebenso wird werden verschiedene Debian Gameserverkernel zum Download angeboten.

5

Sonntag, 20. Februar 2011, 18:28


Wo betreibst du den Gameserver.
Welches spiel hostest du.

Und in deiner speziellen Frage:
Welche Hardware besitzt du?

g-portal

Counterstrike Source

AMD Phenom II X4 965
Arbeitspeicher: 4096 MB DDR3 Ram


- taskset ist zum Einschränken von Prozessen und nicht zum Verbessern der Performance da. Deswegen sollte man es weglassen.
- srcds und hlds haben einen Main Workerthread, der nur von einem einzelnen Core berechnet werden kann. Die anderen Threads sind nicht sehr CPU intensiv.


hm? irgendwo in diesem Forum hab ich aber auch gelesen, wenn mehrere Server auf eine Kiste laufen es Sinn macht diesen einen eigenen Core zuzuweisen.
Da momentan bei mir 2 gameserver laufen, dachte ich mir das es vielleicht Sinn macht jeden 2 Cores zuzuweisen.
Was macht den nun Sinn und ist vielleicht sogar noch Performance fördernd?

DeaD_EyE

Administrator

Beiträge: 3 980

Wohnort: Hagen

Beruf: Mechatroniker (didaktische Systeme)

Rootserver vorhanden: Nein

  • Nachricht senden

6

Sonntag, 20. Februar 2011, 18:37

Es macht z.B. Sinnn einen Apache2 auf einen Kern zu forcieren und allen anderen die restlichen Kerne zur Auswahl zu geben.

Quellcode

1
2
3
4
5
6
7
8
taskset -c 0 apache2....
taskset -c 1-7 srcds_run .....
 taskset -c 1-7 srcds_run .....
 taskset -c 1-7 srcds_run .....
 taskset -c 1-7 srcds_run .....
 taskset -c 1-7 srcds_run .....
 taskset -c 1-7 srcds_run .....
 taskset -c 1-7 srcds_run .....


Dadurch, dass Apache2 peaks verursacht, wenn dieser in Verwendung ist, kann es bei den anderen Servern ggf. zu lags kommen. Durch die Zuweisung aller srcds-Prozesse auf Kern 1-7 (bei 8 Kernen) werden diese nicht vom Apache2 gestört. Der Kernel selbst verteilt die SRCDS-Prozesse dann schon passend auf die einzelnen Kerne. Da man beim SRCDS nicht mit Peaks wie bei Datenbanken und Webservern hat, wird es bei der Lastenverteilung keine Probleme geben.

7

Montag, 21. Februar 2011, 10:31

meine empfehlung ist, die server mit realtime-scheduling (SCHED_FIFO) laufen zu lassen, dann sind andere (nicht-realtime) Prozesse wie apache total egal (hab ich intensiv getestet, der fpsmeter lief früher auf meinem game-root, und ich denke, der wird im bezug auf ressourcen-nachfrage jede clan-site bei weitem übetreffen...).

i.a. macht es dann keinen unterschied, ob man die server noch auf eigene cores zuweist oder nicht. manchmal ist es sogar kontraproduktiv, da das ja immer eine einschränkung ist. linux verteilt normal die prozesse von selbst auf die cpus, d.h. wenn ein prozess gerade rechnen möchte und eine cpu frei ist, bekommt er diese. wenn man den prozess aber auf eine cpu zwingt, und auf dem schon etwas anderes läuft, kann er nicht dran kommen.

in zweifel einfach mal ausprobieren.
http://fpsmeter.org
http://wiki.fragaholics.de (Linux Kernel HOWTO!)
http://www.fragaholics.de

Bitte keine technischen Fragen per PM!

DeaD_EyE

Administrator

Beiträge: 3 980

Wohnort: Hagen

Beruf: Mechatroniker (didaktische Systeme)

Rootserver vorhanden: Nein

  • Nachricht senden

8

Montag, 21. Februar 2011, 14:26

Ich halte nicht viel vom Realtimescheduling. Was passiert z.B. wenn ein Server abstürzt und aufgrund irgendeiner Schleife alles an CPU-Zeit für sich beansprucht. Ist mir schon des öfteren passiert. Das wäre ziemlich schlecht, wenn man dann seinen ganzen Root neu starten muss, weil SSH nicht mehr reagiert.

9

Dienstag, 22. Februar 2011, 09:47

passiert nicht in der form. erstens müssten so viele server abstürzen, wie du cpus hast, damit das wirklich ein problem ist, zweitens hat SCHED_FIFO maximale laufzeiten, die ein prozess für sich beanspruchen darf. man kommt also eigentlich immer noch rein, notfalls mit etwas geduld. ich lasse meine server seit jahren mit SCHED_FIFO und früher mit SCHED_RR laufen. klar, vielleicht gehen 1-2 reboots auf seine rechnung - so what. dafür laufen die server einfach perfekt. (idealerweise installiert man sich nen watchdog, der den reboot dann für einen übernimmt, wenn der load zu hoch wird...) seitdem ich zblock drauf habe, stürzen die server auch nicht mehr ab (vermute, es waren "DoS" attacken, die von zblock ja abgefangen werden).
http://fpsmeter.org
http://wiki.fragaholics.de (Linux Kernel HOWTO!)
http://www.fragaholics.de

Bitte keine technischen Fragen per PM!

Ähnliche Themen