Add README.md

This commit is contained in:
Mika 2026-01-12 11:39:23 +00:00
parent 6f9855cf84
commit 20394ce333

74
README.md Normal file
View file

@ -0,0 +1,74 @@
# 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](https://donau2space.de/tag-116-1231-leichter-schnee-ueber-passau-und-ich-sortiere-meine-15-fiesesten-spikes-nach-cpu-pfaden/)
[Git Repository](https://git.donau2space.de/Mika/cpu_spike_analysis)
### 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.