Add artifact.3/README.md

This commit is contained in:
Mika 2026-03-31 13:46:39 +00:00
parent a24e5f0b03
commit 4c78ce26dd

239
artifact.3/README.md Normal file
View file

@ -0,0 +1,239 @@
# Analyse der aux-Worker-Konfiguration (aux=13)
## Purpose
Vergleichsanalyse der Leistungswirkung verschiedener aux-Worker-Konfigurationen, um eine belastbare Standardkonfiguration für Log-Analyseprozesse festzulegen.
**Problemstellung:** Erhöhung der auxWorkerAnzahl verbessert möglicherweise logbasiertes I/OVerhalten, kann aber durch erhöhte Streuung und sinkende Effizienz saturieren. Ziel war, die optimale Anzahl von auxWorkern zu bestimmen.
**Ziele:**
- Messung der Wirksamkeit zusätzlicher aux-Worker auf HotspotTailLatenzen
- Ermittlung von Varianz und Bandbreitenänderungen bei Skalierung von auxWorkerAnzahl
- Festlegung einer stabilen Betriebsregel auf Basis statistischer Schwellen
## Kontext & Hintergrund
Drei Messläufe (#34, #36, #37) mit identischer Messmethodik, variierender auxWorkerAnzahl (1, 2, 3).
**Gruppierung:**
- aux=1
- aux=2
- aux=3
**Trace-Metadaten / zusätzliche Tags:**
- epoch_ms
- monotonic_ns
- tz_offset_minutes
- run_id
- step_id
**Domänenkontext:**
- Leistungsanalyse asynchroner Log-Verarbeitungs-Worker
- Bewertung von I/O-Lastverteilung und Timing-Streuung
**Outlier-Definition:**
- Methode: Interquartilsabstand (IQR)
- Beschreibung: Abweichungen jenseits des 1,5×IQRBereichs gelten als Ausreißer im Latenzverhalten.
- Metrik: retry_tail_p99
**Motivation:**
- Reduktion der Latenzspitzen in nearexpiryunpinned Hotspots
- Vermeidung von Drift in band_width bei zunehmender Parallelität
- Entwicklung reproduzierbarer, regelbasierter Skalierungsentscheidungen
## Methode / Spezifikation
**Übersicht:**
- Vergleichsanalyse über drei Runs mit variierender auxWorkerZahl
- Auswertung mittels Median und Interquartilsabstand (IQR)
- Trennung der Metriken nach HotspotTail, RestTail und band_width
**Algorithmen / Verfahren:**
- Erfassen der LogMetriken unter identischen Rahmenbedingungen
- Berechnen von Median und IQR pro Kennzahl und auxWorkerGruppe
- Vergleich von Δp99 zwischen Runs
- Bewertung der Unterschiede anhand der IQRSpanne (Signifikanzkriterium Δ > IQR/2)
### Bootstrap-Übersicht
Verteilungsschätzung möglicher StichprobenmedianDifferenzen durch wiederholtes Resampling.
**Zielgrößen:**
- retry_tail_p99_Hotspot
- retry_tail_p99_Rest
- band_width
### Resampling-Setup
- aux=1
- aux=2
- aux=3
**Stichprobeneinheit:** RunFenster (Zeitintervallmessung)
**Resampling-Schema:**
- bootstrap resampling
- 1.000 Wiederholungen pro Gruppe
**Konfidenzintervalle:**
- Niveau: 0.95
- Typ: percentile-based
- Ableitung: empirische Quantile der bootstrapped Differenzen
### Abgeleitete Effektgrößen
**Risk Difference (Differenz der Raten):**
- Definition: Differenz der relativen Häufigkeit hoher Latenzwerte zwischen Vergleichsgruppen.
- Bootstrap: Schätzung der CI der Differenz aus resampled Anteil hoher p99Werte.
**Risk Ratio:**
- Definition: Verhältnis der Wahrscheinlichkeit erhöhter Latenz bei höherer auxZahl.
- Bootstrap: Resamplingbasierte Schätzung der Verteilungsverhältnisse.
### C-State-Kontrolle
**Ziel:** Sicherstellen, dass beobachtete Unterschiede nicht durch CPUStromsparmodi beeinflusst werden.
**Vorgehen:**
- Fixieren der CPUCStates während der Läufe
- Überwachung über TraceMetadata
- Dokumentation des setup_fingerprint zur Vergleichbarkeit
## Input / Output
### Input-Anforderungen
**Hardware:**
- MehrkernCPU mit mindestens 4 Kernen
- Stabile I/OSpeicherumgebung
**Software:**
- eigener Logger mit SanityHeader
- Telemetrie mit setup_fingerprint
- Statistikmodul zur Median/IQRAnalyse
**Konfiguration:**
- auxWorkerZahl parametrierbar (13)
- identische Fensterung und Messperiode je Run
### Erwartete Rohdaten
**Felder pro Run:**
- epoch_ms
- monotonic_ns
- tz_offset_minutes
- run_id
- step_id
- retry_tail_p99
- band_width
**Formatbeispiele:**
- 1705123145,512312233122,60,36,12,0.015,3.5e+06
**Trace-Daten:**
- Format: CSV oder JSONLogdateien mit fixem Header
- Hinweis: setup_fingerprint dient zur Absicherung parametergleicher Läufe
### Analyse-Ausgaben
**Pro Gruppe / pro Governor:**
- Median
- IQR
- p99
- DriftIndikator (relative Varianz)
**Vergleichsausgaben:**
- aux=1 vs aux=2
- Δ: deutliche Verbesserung von Hotspotp99
- CI(Δ): positiv außerhalb IQR
- RR: unter 1
- CI(RR): eng, stabil
- aux=2 vs aux=3
- Δ: gering, innerhalb IQR
- CI(Δ): überlappt Null
- RR: ≈1
- CI(RR): breit, unsicher
- C-State-Korrelation: keine signifikanten Korrelationen beobachtet
- Trace-Muster: leicht erhöhte band_widthVarianz bei aux=3
## Workflow / Nutzung
**Analyse-Workflow:**
- Parameterwahl (auxWorkerAnzahl setzen)
- RunDurchführung mit identischen Bedingungen
- LogErfassung und SanityHeaderValidierung
- Statistische Auswertung (Median/IQR, Bootstrap optional)
- Sättigungskriterium prüfen (Δ < IQR/2)
- DefaultEntscheidung aktualisieren
### Trace-Template-Anforderungen
**Ziel:** Vergleichbare Runs ohne TuningArtefakte erzeugen.
**Erforderliche Tags & Metadaten:**
- setup_fingerprint
- run_id
- aux_worker
- time_window_id
**trace-cmd-Setup:**
- fixierte CPUCStates
- identische LoggerKonfiguration
- synchronisierte Startbedingungen
**Run-Design für Contributors:**
- jeweils 1 Parameteränderung pro Run
- mindestens 3 Wiederholungen für Medianstabilität
## Interpretation & erwartete Ergebnisse
**Kernbefunde:**
- aux=1 → aux=2 führt zu klar verbessertem HotspotTail (p99Verringerung außerhalb IQR)
- aux=2 → aux=3 zeigt keine signifikante Verbesserung, jedoch erhöhte Varianz in band_width
- Sättigungseffekt ab aux≥3 erkennbar
**Implikationen für Experimente:**
- aux=2 als stabiler Default sinnvoll
- weiteres Hochskalieren ohne strukturellen Vorteil
- Fokus künftig auf Steuerungsalgorithmik statt WorkerZahl
**Planungsziel:**
- Ziel: Definieren reproduzierbarer Entscheidungsregeln für WorkerSkalierung.
- Vorgehen:
- Vergleich ΔHotspotP99 gegen IQR/2Schwelle
- Zusätzliche Driftbewertung von band_width in Frühfenstern
## Limitationen & Fallstricke
**Datenbezogene Limitationen:**
- nur drei Runs, begrenzte Stichprobentiefe
- keine externe Replikation auf anderer Hardware
**Bootstrap-spezifische Limitationen:**
- Verteilungsschätzungen sensitiv für kleine Stichproben
- breite CI erschwert sichere Interpretation bei Δ≈0
**Kausalität & Generalisierbarkeit:**
- Resultate gelten nur für identische Logger und I/OProfile
- keine direkte Generalisierung auf andere TaskTypen
**Praktische Fallstricke:**
- unentdeckte Seiteneffekte bei paralleler Instrumentierung
- Verwechslung von Drift und Messrauschen bei kurzen Runs
## Nächste Schritte & Erweiterungen
**Geplante Experimente:**
- Analyse alternativer SchedulingStrategien für auxWorker
- Erweiterung durch präzisere LatenzVorhersagemodelle
**Analyseziele:**
- Quantifizierung der band_widthDriftursachen
- Messung der Tradeoffs zwischen Parallelität und Stabilität
**Regression & Modellierung:**
- Aufbau eines Regressionsmodells für auxWorkerEffekte auf Latenzmetriken
**Community-Beiträge:**
- Bereitstellung der setup_fingerprintMethodik als offenes Vergleichsinstrument für ähnliche Experimente