cpu_spike_analysis/README.md
2026-01-12 11:39:23 +00:00

2.9 KiB
Raw Permalink Blame History

CPU Spike Analysis

Überblick

Das Experiment cpu_spike_analysis untersucht und visualisiert CPU-Spikes anhand von Scheduler-Events und Migrationen. Es bietet Werkzeuge zur Klassifikation und interaktiven Darstellung von CPU-Lastmustern, um Ursachen und Dynamiken von Spikes besser zu verstehen.

Artikel lesen
Git Repository

Hinweis

Alle Inhalte wurden per KI generiert. Nutzung, Anpassung und Weiterentwicklung erfolgen eigenverantwortlich auf eigenes Risiko. Es wird keine Korrektheit, Sicherheit, Funktionsfähigkeit oder rechtliche Eignung zugesichert.

Inhalt des Repositories

Das Repository umfasst zwei Hauptkomponenten:

1. spike_classifier

  • Art: Python-Skript
  • Zielumgebung: Linux Userspace
  • Sprachen: Python
  • Zweck: Klassifiziert CPU-Spikes und berechnet zugehörige Kennwerte.

API-Übersicht:

  • Funktion classify_spikes(json_data): Analysiert übergebene JSON-Daten zu Scheduler-Events und gibt strukturierte Spikeresultate zurück.

Datenstruktur classified_spikes: JSON-Objekte mit den Feldern

  • spike_id
  • cpu_path
  • reorder_score
  • timestamp
  • signature

2. spike_visualizer

  • Art: Web-UI
  • Zielumgebung: Webbrowser
  • Sprachen: HTML, CSS, JavaScript
  • Zweck: Interaktive Visualisierung der klassifizierten Spikes.
  • Abhängigkeiten: d3.js

API-Routen:

  • GET /api/spikes liefert die klassifizierten Spikes als JSON.

Installation & Nutzung

Voraussetzungen

  • Linux-System mit Python ≥ 3.8
  • Webserver oder lokaler HTTP-Server

Installation (generisch)

  1. Repository klonen:
    git clone https://git.donau2space.de/Mika/cpu_spike_analysis
  2. Python-Abhängigkeiten installieren:
    pip install -r requirements.txt
  3. Datensätze vorbereiten und Skripte im Projektverzeichnis ausführen.

Nutzung

  • Analyse: CPU-Trace-Datei oder Event-JSON mit spike_classifier verarbeiten.
  • Visualisierung: spike_visualizer über lokalen Webserver laden und die Ergebnisse darstellen.

Typische Use-Cases

  • Untersuchung ungewöhnlicher CPU-Auslastungen.
  • Analyse von Migrationen zwischen Kernen.
  • Visualisierung von Performance-Anomalien im Scheduler.
  • Vergleich mehrerer Systeme oder Kernel-Versionen anhand von Spike-Signaturen.

Struktur & Erweiterbarkeit

  • Modularer Aufbau: Analyse (Python) und Visualisierung (Web) sind getrennt.
  • Erweiterungen:
    • Zusätzliche Klassifikationsalgorithmen oder Heuristiken im Python-Modul.
    • Integration weiterer Visualisierungskomponenten in der Web-UI.
    • Export von Analyseergebnissen in alternative Formate.

Lizenz

Dieses Projekt steht unter der MIT-Lizenz.

Alle Inhalte wurden automatisch durch KI erstellt. Die Nutzung erfolgt vollständig auf eigene Gefahr.