Willkommen bei

FPSmeter

Analysiere die Leistung deiner Gameserver in Echtzeit – präzise und zuverlässig.

Tutorial: Linux-Kernel mit 1000Hz Realtime neu kompilieren

Aktualisiert von FPSMeter basierend auf einem Tutorial aus dem Jahr 2009. Angepasst für Debian 11/12, Ubuntu 22.04+, AlmaLinux/RHEL 9+.

✨ Ziel

Optimieren Sie die Stabilität Ihrer HLDS/SRCDS/CS2-Spielserver durch Neukompilierung eines Linux-Kernels im Echtzeitmodus (PREEMPT_RT) mit einer Taktfrequenz von 1000Hz.

🧠 Warum einen 1000Hz + Realtime-Kernel auf einem Spielserver verwenden?

Standard-Linux-Kernel verwenden eine Systemtaktfrequenz von 100Hz oder 250Hz, was bedeutet, dass Systemunterbrechungen alle 10 ms bzw. 4 ms auftreten.
Auf einem Spielserver zählt jede Millisekunde: Eine verzögerte CPU-Reaktion kann zu Lags, Mikrorucklern oder Schwankungen in den Tickrates führen. Ein 1000Hz-Kernel sorgt dafür, dass das Betriebssystem das System alle 1 ms abfragt – für deutlich höhere Präzision und Reaktionsfähigkeit.

💡 In Kombination mit dem Realtime-Patch ermöglicht dies dem Spielserver (HLDS, SRCDS, CS2...):

  1. Absolute CPU-Priorität zu erhalten
  2. Latenzspitzen zu reduzieren
  3. Konstantere Framerates und Tickrates zu erreichen
  4. Ein flüssigeres Spielerlebnis zu bieten
  5. System-Multitasking-bedingte Ruckler zu eliminieren.

Diese Kombination (1000Hz + RT) wird besonders empfohlen für:

  1. Wettkampfserver
  2. E-Sport- oder LAN-Umgebungen
  3. Infrastrukturen, bei denen jede ms CPU-Latenz das Spielerlebnis beeinflusst

🚧 Voraussetzungen

Sie müssen Root-Zugriff haben (sudo -i oder su -) und auf einem kompatiblen dedizierten Server oder VPS arbeiten.

Benötigte Pakete unter Debian/Ubuntu:

apt update && apt install -y build-essential libncurses-dev bison flex libssl-dev libelf-dev bc wget curl zstd git

📁 1. Kernel-Quellen herunterladen

Besuchen Sie https://www.kernel.org und laden Sie die neueste stabile Version mit PREEMPT_RT-Unterstützung herunter (z. B. Linux 6.8.x oder 6.9.x).

wget https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.9.tar.xz
wget https://cdn.kernel.org/pub/linux/kernel/projects/rt/6.9/patch-6.9-rt1.patch.gz

📂 2. Entpacken und RT-Patch anwenden

tar -xf linux-6.9.tar.xz && cd linux-6.9 && zcat ../patch-6.9-rt1.patch.gz | patch -p1

🔧 3. Kernel-Konfiguration

Vorhandene Konfiguration kopieren, falls vorhanden:

cp -v /boot/config-$(uname -r) .config

Konfiguration starten:

make menuconfig

Folgende Einstellungen anpassen:

  1. General setup > Preemption Model: Fully Preemptible Kernel (Real-Time)
  2. Processor type and features > Timer frequency: 1000 Hz
  3. Aktivieren: High Resolution Timer, Tickless System
  4. Deaktivieren: CPU frequency scaling, suspend/hibernate

🛠️ 4. Kompilierung und Installation

make -j$(nproc)
make modules_install
make install

Initramfs generieren (falls notwendig):

update-initramfs -c -k 6.9.0-rt1

GRUB aktualisieren:

update-grub

🚗 5. Neustart

reboot

Nach dem Neustart können Sie folgenden Befehl ausführen, um zu prüfen, ob der neue Kernel aktiv ist:

uname -r

Sie sollten einen Kernel sehen wie: 6.9.0-rt1


ℹ️ FPSMeter-Tipps

  1. RT-Kernel reagieren empfindlicher auf Drittanbieter-Treiber.
  2. Vermeiden Sie proprietäre NVIDIA-Module oder exotische Virtualisierung ohne vorherige Tests.
  3. Der RT-Kernel stabilisiert Tickrate/FPS auf CS2/SRCDS/HLDS-Servern, ist aber keine Wunderwaffe bei bereits überlasteter CPU!

🎓 Quellen

  1. https://wiki.linuxfoundation.org/realtime/start
  2. https://wiki.debian.org/HowToRecompileKernel
  3. https://kernel.org
  4. http://wiki.fragaholics.de/index.php/EN:Linux_Kernel_Optimization

- ✍️ Verfasst am: 26/06/2025 à 23h02
- 🔄 Zuletzt aktualisiert am: 26/06/2025 à 23h02
- 🧠 Autor: Slymer
- 💬 Community-Diskussion: Diskussion anzeigen