Ist jedes Gebiet einem einzelnen Thread zugeordnet und drängen sich viele Spieler an einem Ort, läuft nur dieser eine Kern auf 100 %.
Warum Ein Thread ist für ein Gebiet (Kanal) zuständig → Folge Drängen sich Spieler an einem Ort, ist nur dieser Kern ausgelastet, die übrigen Kerne haben Luft → Auf dem Bildschirm Nur dieses Gebiet laggt, andere Gebiete laufen normal
Auf Kanäle verteilen, innerhalb des Gebiets parallelisieren, Spielerzahl begrenzen.
Aufgaben Infrastrukturteam
CPU-Auslastung pro Kern in Monitoring und Alarmierung aufnehmen (im Durchschnitt über den ganzen Server geht die Auslastung eines einzelnen Kerns unter).
Größenordnungen
Auf einem Server mit 16 Kernen erscheint die Gesamt-CPU-Auslastung bei einem Kern auf 100 % nur als etwa 6 %. Finden lässt sich das nur über die Auslastung pro Kern.
Im Graphen
Steigt mit Spielerzahl und Last · CPU-Auslastung pro Kern, CPU pro Thread
Wo nachsehen
Mit mpstat -P ALL 1 die Auslastung pro Kern und mit pidstat -t 1 die CPU pro Thread des Spielprozesses prüfen, mit der Spielerzahl der Zone vergleichen, für die der am stärksten belastete Thread zuständig ist
Spricht dafür
Gesamt-CPU des Servers niedrig, nur ein Thread (ein Kern) klebt nahe 100 %, und zur selben Zeit drängen sich Spieler in der Zone dieses Threads
Spricht dagegen
Mehrere Kerne gleichmäßig hoch: Überlast des ganzen Servers. Nur %soft (Empfangsverarbeitung) eines Kerns hoch: eher NIC-Interrupts auf nur einem Kern
Prüfmittel
Mit Infrastruktur-Tools prüfbar (ohne Spielcode)
Mehr dazu
Dass andere Gebiete normal laufen, gilt nur, wenn jedes Gebiet seinen Tick unabhängig ausführt. Warten die Threads mehrerer Gebiete in jedem Tick aufeinander und gehen gemeinsam zum nächsten Tick über, bremst das am stärksten belastete Gebiet den Tick des ganzen Servers.
Time Dilation – How’s That Going?CCP Games Time Dilation in EVE Online wirkt pro Node, daher werden auch entfernte Sonnensysteme auf demselben Node langsamer, große Schlachten laufen auf verstärkten Nodes mit nur 4 Sonnensystemen
mpstat(1) — Linux manual pagesysstat Zeigt Auslastung pro Prozessor und Gesamtdurchschnitt getrennt an (-P ALL), %soft ist der Zeitanteil für die Verarbeitung von Software-Interrupts
pidstat(1) — Linux manual pagesysstat -t zeigt zusätzlich Statistiken pro Thread des Prozesses an (CPU-Auslastung u. a.)