5.9 KiB
Analyse der ersten 10 Runs des N40-Experiments
Purpose
Zwischenanalyse der ersten zehn N40-Runs mit Fokus auf Performanceverteilung und Vergleich pinned vs unpinned.
Problemstellung: Bewerten, ob pinned-Runs konsistent geringere Mischfenster-Dauern und stabilere Verteilungen aufweisen als unpinned-Runs, basierend auf einer kleinen Stichprobe (n=5/5).
Ziele:
- Validierung der Datenintegrität und Stabilität der Aggregationskette
- Vergleich der Mischfenster-Metriken zwischen pinned und unpinned Runs
- Berechnung erster statistischer Tests zur Trennung der Gruppen
Kontext & Hintergrund
Erste 10 Runs des N40-Experiments, bestehend aus 5 pinned- und 5 unpinned-Konfigurationen.
Gruppierung:
- pinned
- unpinned
Trace-Metadaten / zusätzliche Tags:
- corr_id-Konsistenzprüfung
- write_pre/write_post-Paarvalidierung
- Aggregator-Run-Summaries mit Metadaten (pinned_flag, runtime, config_hash)
Domänenkontext:
- CPU clocksource switch performance
- Kernel- und VM-Level Timingtraces
- seqcount_retry_count und Mischfenster-Dauer als korrelierte Metriken
Outlier-Definition:
- Methode: Empirische Sichtung der Maximalwerte (tails) der Mischfenster
- Beschreibung: Breite Fenster und hohe p95-Werte in unpinned als potenzielle Outlier-Indikation.
- Metrik: Mischfenster-Dauer (µs)
Motivation:
- Validierung der experimentellen Setup-Stabilität vor fortgesetzter Datenerhebung
- Frühe Indikation, ob pinned-Konfiguration stabilere Zeitverläufe liefert
Methode / Spezifikation
Übersicht:
- Gleichbleibendes Setup für alle Runs (Kernel, VM, Last, Trace).
- Vergleich pinned vs unpinned anhand bisheriger 10 Runs.
- Berechnung von Verteilungen und Korrelationen aus Aggregator-Summaries.
Algorithmen / Verfahren:
- Berechnung p50, p95, max der Mischfenster-Dauer für mult↔shift und base_raw↔nsec_base.
- Berechnung der Korrelation (Pearson, Spearman) zwischen Mischfenster-Dauer und seqcount_retry_count.
- Mann-Whitney-U-Test auf p95-Dauern, Gruppen: pinned vs unpinned.
Bootstrap-Übersicht
Kein Bootstrap-Verfahren in dieser Zwischenanalyse angewendet.
Zielgrößen:
Abgeleitete Effektgrößen
Risk Difference (Differenz der Raten):
- Definition: Nicht berechnet in dieser Phase.
Risk Ratio:
- Definition: Nicht relevant für diesen Vergleich.
C-State-Kontrolle
Ziel: Konstante Laufbedingungen über Runs sicherstellen.
Vorgehen:
- Fixierung aller C-State-beeinflussenden Parameter über alle Runs.
- Verwendung identischer Zielzahlen bei clocksource_switch-Ereignissen.
Input / Output
Input-Anforderungen
Hardware:
- Testsystem identisch über alle Runs
Software:
- Unveränderter Kernel und VM-Konfiguration
Konfiguration:
- Konstantes Trace-Setup mit fixer Zielzahl clocksource_switch pro Run
Erwartete Rohdaten
Felder pro Run:
- pinned_flag
- corr_id_chain
- write_pre/write_post
- runtime
- config_hash
Formatbeispiele:
- pinned_flag=true, runtime=38.2s, hash=ab4d92e
Trace-Daten:
- Format: raw trace events
- Hinweis: clocksource_switch, seqcount_retry_count, Mischfenster-Dauer
Analyse-Ausgaben
Pro Gruppe / pro Governor:
- retry-free-in-window/100 switches
- Mischfenster p50/p95/max
- Pearson and Spearman correlation coefficients
Vergleichsausgaben:
-
pinned vs unpinned
- Tests: Mann-Whitney-U-Test Ergebnis (Trend erkennbar, bei n=5/5 nicht signifikant)
-
C-State-Korrelation: Nicht gesondert analysiert.
-
Trace-Muster: Hohe Konsistenz, keine defekten corr_id-Ketten.
Workflow / Nutzung
Analyse-Workflow:
- Jeden Run direkt nach Durchführung aggregieren.
- Run-Summary generieren und integritätsprüfen.
- Ergebnisse für pinned und unpinned getrennt zusammenfassen.
- Vergleichstabelle mit Kernmetriken erzeugen.
- Statistischen Test auf p95-Werte anwenden.
Trace-Template-Anforderungen
Ziel: Gleichförmige Datenbasis über alle Runs.
Erforderliche Tags & Metadaten:
- corr_id
- write_pre
- write_post
- pinned_flag
- config_hash
trace-cmd-Setup:
- Keine Änderungen an Trace-Target oder Samplingrate während Serie.
Run-Design für Contributors:
- Fortführung bis N40 komplett (20 pinned, 20 unpinned).
Interpretation & erwartete Ergebnisse
Kernbefunde:
- Pinned-Runs zeigen im Median und p95 konsistent kleinere Mischfenster.
- Unpinned-Runs haben häufig breitere Verteilungen mit längeren Tails.
- Stärkere Korrelation zwischen Mischfenster-Dauer und seqcount_retry_count bei unpinned-Runs.
- Mann-Whitney-U-Test deutet auf Trennung, jedoch geringe Stichprobe.
Implikationen für Experimente:
- Aggregationspfad und Datenhygiene validiert.
- Experiment kann auf 40 Runs erweitert werden, ohne methodische Anpassung.
Planungsziel:
- Ziel: Vollständige Serie (N40) mit solider Effektgrößen- und Konfidenzanalyse.
- Vorgehen:
- Fortführung bis 20/20 Runs pro Gruppe.
- Nach Abschluss Berechnung von Cliff’s delta und Konfidenzintervallen.
Limitationen & Fallstricke
Datenbezogene Limitationen:
- Kleine Stichprobe (n=5 pro Gruppe) limitiert Signifikanz.
- Keine Kontrolle potenzieller Mikrovariationen in Runtime-Bedingungen.
Bootstrap-spezifische Limitationen:
- Bootstrap-Methoden noch nicht angewandt.
Kausalität & Generalisierbarkeit:
- Ergebnisse vorläufig, noch keine belastbare Generalisierbarkeit.
Praktische Fallstricke:
- Gefahr voreiliger Schlussfolgerungen bei geringen N.
- Offsets (~1,111s) in unpinned-Tails nur beobachtet, nicht geprüft.
Nächste Schritte & Erweiterungen
Geplante Experimente:
- Vollständige N40-Laufserie (20 pinned / 20 unpinned) abschließen.
Analyseziele:
- Gesamtauswertung aller 40 Runs mit statistischer Absicherung und Konfidenzintervallen.
Regression & Modellierung:
- Erweiterung um Effektgrößenmaß (Cliff’s delta) und Bootstrap-basiertes Vertrauen.
Community-Beiträge:
- Bereitstellung der stabilen Trace-Templates und Run-Summaries für Replikationszwecke.