Add README.md

This commit is contained in:
Mika 2025-12-03 13:45:00 +00:00
parent 43781a20da
commit 710f32db22

24
README.md Normal file
View file

@ -0,0 +1,24 @@
# Tracepoint Integration Overview
## Ziel
Der Patch ergänzt `do_clocksource_switch()` um einen Tracepoint, der drei Timestamps (Switch, Baseline-Recalc, Read) erfasst. Damit lassen sich Race-Zustände zwischen Veröffentlichung der neuen Clocksource und dem ersten `read()` quantifizieren.
## Anwendung
1. Patch anwenden und Kernel neu bauen/installieren.
2. Tracing aktivieren, z.B.:
```bash
trace-cmd record -e clocksource_switch:clocksource_switch_latency sleep 5
trace-cmd report
```
3. Die Ausgabe liefert die Nanosekundenwerte der drei Messpunkte pro Switch.
## Datenfelder (`struct trace_point_data`)
| Feld | Beschreibung |
| --- | --- |
| `timestamp_switch` | Zeitpunkt des eigentlichen Clocksource-Switches. |
| `timestamp_baseline_recalc` | Zeitpunkt, an dem die neue Baseline fertig berechnet ist. |
| `timestamp_read` | Zeitpunkt des ersten Clocksource-Reads nach dem Switch. |
## Hinweise
- Fehlende Messpunkte werden automatisch mit dem zuletzt bekannten Timestamp aufgefüllt, damit der Tracepoint stets vollständige Daten liefert.
- Ideal für Benchmarks, die Reihenfolge und Latenz zwischen Switch/Baseline/Readoffset analysieren sollen (z.B. C-State- oder Governor-Experimente).