Add readme_md
This commit is contained in:
parent
932a075b58
commit
a2ad9327e4
1 changed files with 84 additions and 0 deletions
84
readme_md
Normal file
84
readme_md
Normal file
|
|
@ -0,0 +1,84 @@
|
||||||
|
# bpf_baseline_recalc_analysis
|
||||||
|
|
||||||
|
## Überblick
|
||||||
|
Dieses Repository enthält die Analyse der Auswirkungen von BPF- und kprobes-Tracing auf die Latenz und die Reihenfolge der Anwendung von baseline_recalc. Ziel ist es, Messungen und Auswertungen zur Performancebeeinflussung unterschiedlicher Tracingstrategien durchzuführen.
|
||||||
|
|
||||||
|
**Link zum Artikel:** [https://donau2space.de/tag-92-1724-bpf-baseline_recalc-ein-loop-wird-kleiner/](https://donau2space.de/tag-92-1724-bpf-baseline_recalc-ein-loop-wird-kleiner/)
|
||||||
|
|
||||||
|
### 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
|
||||||
|
|
||||||
|
### 1. bpf_probe_tool
|
||||||
|
- **Art:** linux_cli_tool
|
||||||
|
- **Ziel:** linux-userspace
|
||||||
|
- **Sprachen:** C
|
||||||
|
- **Zweck:** Kompilieren und Testen von BPF-Probes in einer KVM-Umgebung.
|
||||||
|
|
||||||
|
**API-Funktionen:**
|
||||||
|
- `compile_bpf_probe(source_code)` – kompiliert eine BPF-Probe aus Quellcode und liefert einen booleschen Erfolgswert.
|
||||||
|
- `execute_bpf_probe(probe_id)` – führt eine BPF-Probe mit angegebener ID aus und liefert Messergebnisse.
|
||||||
|
|
||||||
|
**Datenstrukturen:**
|
||||||
|
- `bpf_result` – enthält `latency`, `timestamp`, `probe_id`.
|
||||||
|
|
||||||
|
### 2. baseline_recalc_ordering
|
||||||
|
- **Art:** python_script
|
||||||
|
- **Ziel:** mixed
|
||||||
|
- **Sprachen:** Python
|
||||||
|
- **Zweck:** Analyse der Latenz basierend auf verschiedenen Reihenfolgen der Anwendung von baseline_recalc.
|
||||||
|
|
||||||
|
**API-Funktionen:**
|
||||||
|
- `analyze_latency(order_sequence)` – wertet Latenzmetriken aus und liefert JSON-formatierte Ergebnisse.
|
||||||
|
|
||||||
|
**Datenstrukturen:**
|
||||||
|
- `latency_results` – enthält `order_sequence`, `latency_metrics`.
|
||||||
|
|
||||||
|
### 3. bpf_gist
|
||||||
|
- **Art:** doc_only
|
||||||
|
- **Ziel:** mixed
|
||||||
|
- **Zweck:** Dokumentation der BPF-Snippets, inklusive Nutzungshinweisen und Testanleitungen.
|
||||||
|
|
||||||
|
## Installation & Nutzung
|
||||||
|
|
||||||
|
### bpf_probe_tool (CLI)
|
||||||
|
**Installation (Beispiel):**
|
||||||
|
1. Repository klonen.
|
||||||
|
2. In das Verzeichnis `bpf_probe_tool` wechseln.
|
||||||
|
3. Mit einem C-Compiler (z. B. gcc) kompilieren.
|
||||||
|
- `gcc -o bpf_probe_tool main.c`
|
||||||
|
|
||||||
|
**Beispielaufruf:**
|
||||||
|
```
|
||||||
|
./bpf_probe_tool --probe mytrace.c --run
|
||||||
|
```
|
||||||
|
|
||||||
|
### baseline_recalc_ordering (Python)
|
||||||
|
**Voraussetzungen:** Python 3.x
|
||||||
|
|
||||||
|
**Ausführung:**
|
||||||
|
```
|
||||||
|
python baseline_recalc_ordering.py --sequence default
|
||||||
|
```
|
||||||
|
|
||||||
|
## Typische Use-Cases
|
||||||
|
- Untersuchung der Performancekosten von BPF- und kprobes-Tracing.
|
||||||
|
- Vergleich von Latenzen bei unterschiedlicher Reihenfolge der baseline_recalc-Anwendung.
|
||||||
|
- Erstellung reproduzierbarer Latenzprofile in KVM-Umgebungen.
|
||||||
|
|
||||||
|
## Struktur & mögliche Erweiterungen
|
||||||
|
Das Projekt besteht aus modularen Komponenten:
|
||||||
|
- CLI-Tool zur BPF-Interaktion
|
||||||
|
- Python-Skript zur Analyse
|
||||||
|
- Dokumentation zur Einbindung individueller Probes
|
||||||
|
|
||||||
|
Zukünftige Erweiterungen:
|
||||||
|
- Automatisierte Ergebnisaggregation
|
||||||
|
- Integration in CI-Umgebungen
|
||||||
|
- Erweiterte Latency-Metriken für BPF-Tracing
|
||||||
|
|
||||||
|
## Lizenz
|
||||||
|
Dieses Projekt steht unter der **MIT-Lizenz**.
|
||||||
|
|
||||||
|
Alle Inhalte dieses Repositories sind automatisch erstellt und ausschließlich zu Forschungs- und Entwicklungszwecken vorgesehen. Nutzung erfolgt auf eigene Verantwortung.
|
||||||
Loading…
Reference in a new issue