Add readme_md

This commit is contained in:
Mika 2026-01-22 11:58:40 +00:00
parent 853f7d52e0
commit 3ef01ebc20

91
readme_md Normal file
View file

@ -0,0 +1,91 @@
## n40_time_measurement Experiment zur präzisen Zeitmessung
### Überblick
Dieses Repository dokumentiert das Experiment **n40_time_measurement**. Ziel ist die präzise Messung und Aggregation von Kernel-Ereignissen mit Schwerpunkt auf Stabilität und Verlässlichkeit der ermittelten Metriken.
**Link zum Artikel:** [https://donau2space.de/tag-126-1251-wolkig-ueber-passau-und-mein-n40-bekommt-heute-drei-neue-harte-punkte/](https://donau2space.de/tag-126-1251-wolkig-ueber-passau-und-mein-n40-bekommt-heute-drei-neue-harte-punkte/)
**Git Repository:** [https://git.donau2space.de/Mika/n40_time_measurement](https://git.donau2space.de/Mika/n40_time_measurement)
### Hinweis
Alle Inhalte wurden per KI generiert.
Nutzung, Anpassung und Weiterentwicklung erfolgen eigenverantwortlich und auf eigenes Risiko.
Es wird keine Korrektheit, Sicherheit, Funktionsfähigkeit oder rechtliche Eignung zugesichert.
### Inhalt des Repositories
#### 1. clocksource_switch_analysis
- **Art:** python_script
- **Zielumgebung:** Linux Userspace
- **Sprachen:** Python
- **Zweck:** Analyse und Aggregation von 'clocksource_switch'-Ereignissen aus Rohdaten.
- **API-Funktion:**
- **aggregate_clocksource_data(raw_data)** → Gibt `aggregated_data` zurück.
- **Datenstruktur:** `aggregated_data` (JSON) mit Feldern:
- mean
- p50
- p95
- p99
- retry_free_rate
#### 2. sanity_check_tool
- **Art:** python_script
- **Zielumgebung:** Linux Userspace
- **Sprachen:** Python
- **Zweck:** Durchführung von Sanity-Checks auf den gemessenen Ereignissen.
- **API-Funktion:**
- **perform_sanity_check(run_summary)** → Gibt `sanity_results` zurück.
- **Datenstruktur:** `sanity_results` (JSON) mit Feldern:
- missing_write_pairs
- broken_corr_ids
- empty_fields
#### 3. results_visualization
- **Art:** web_ui
- **Zielumgebung:** Web
- **Sprachen:** HTML, CSS, JavaScript
- **Zweck:** Webbasierte Visualisierung der aggregierten Ergebnisse.
- **Routen:**
- **GET /results** Lädt die aggregierten Ergebnisse zur Anzeige.
- **CSS-Komponenten:** chart-style
- **JavaScript-Module:** chart-library
### Voraussetzungen (Webserver/DB)
- Installierter Webserver (z.B. Nginx oder Apache)
- Unterstützung für statische HTML-, CSS- und JS-Dateien
- Optional: Backend-Endpunkt zur Bereitstellung der aggregierten JSON-Ergebnisse
### Starten der Anwendung
1. Webserver starten und `results_visualization`-Verzeichnis bereitstellen.
2. Browser öffnen und auf `/results` zugreifen, um die visuellen Darstellungen zu laden.
### Installation & Nutzung
Da mehrere Python-Komponenten vorhanden sind, sollte eine saubere virtuelle Umgebung genutzt werden:
1. Python3.8 installieren.
2. Virtuelle Umgebung einrichten:
`python3 -m venv venv && source venv/bin/activate`
3. Abhängigkeiten installieren:
`pip install -r requirements.txt`
4. Analyseskript ausführen:
`python clocksource_switch_analysis.py input_data.json`
5. Sanity-Check durchführen:
`python sanity_check_tool.py aggregated_data.json`
### Typische Use-Cases
- Untersuchung der Stabilität von Clocksource-Mechanismen.
- Validierung von Kernel-Ereignisdaten mittels Sanity-Checks.
- Visualisierung und Vergleich mehrerer Messläufe.
- Entwicklung weiterführender Analysemetriken auf Basis strukturierter Aggregationsdaten.
### Struktur & Erweiterbarkeit
- **Analyse:** Kernlogik in `clocksource_switch_analysis`.
- **Validierung:** Separate Prüfung der Datenintegrität über `sanity_check_tool`.
- **Präsentation:** Webbasierte Darstellung in `results_visualization`.
Zukünftige Erweiterungen können zusätzliche Eventtypen oder neue Visualisierungsoptionen integrieren.
### Lizenz
Dieses Repository steht unter der **MIT-Lizenz**. Nutzung und Weiterverbreitung sind unter Einhaltung der Lizenzbedingungen gestattet.
---
Automatisch generierte technische Dokumentation ohne Gewähr.