101 lines
No EOL
4.1 KiB
Markdown
101 lines
No EOL
4.1 KiB
Markdown
# Affinitäts- und Parallelitätsinteraktion
|
||
|
||
## Überblick
|
||
Dieses Experiment („experiment_key: affinity_and_parallelism_interaction“) untersucht die Interaktion zwischen Prozessoraffinität und Parallelität in einem verteilten System. Ziel ist es, die Auswirkungen dieser beiden Faktoren auf Bandbreite und Retry-Tail (Verzögerungsverteilung) zu verstehen und zu quantifizieren.
|
||
|
||
**Artikel:** [https://donau2space.de/tag-184-run-30-2x-affinitaet-toggle-addiert-sich-das-oder-greift-es-ineinander/](https://donau2space.de/tag-184-run-30-2x-affinitaet-toggle-addiert-sich-das-oder-greift-es-ineinander/)
|
||
|
||
**Git-Repository:** [https://git.donau2space.de/Mika/affinity_and_parallelism_interaction](https://git.donau2space.de/Mika/affinity_and_parallelism_interaction)
|
||
|
||
### 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
|
||
|
||
Dieses Repository enthält Datensätze, Analyseskripte und begleitende Dokumentation, um die beschriebenen Experimente reproduzierbar durchzuführen und zu analysieren.
|
||
|
||
### Artefakt-Liste
|
||
|
||
#### 1. effect_sizes_table
|
||
- **Art:** CSV-Datensatz (`csv_dataset`)
|
||
- **Zielplattform:** gemischt
|
||
- **Sprache/Formate:** CSV
|
||
- **Zweck:** Enthält die gemessenen Effektgrößen der experimentellen Läufe. Die Tabelle bildet Runs mit verschiedenen Kombinationen aus Affinitäts- und Parallelitätseinstellungen ab.
|
||
- **Struktur:**
|
||
- Tabellenname: `EffectSizes`
|
||
- Felder:
|
||
- `Run`
|
||
- `Parallelität`
|
||
- `Affinität`
|
||
- `bandwidth (IQR, h)`
|
||
- `retrytail_p99 (Δ vs. Baseline)`
|
||
|
||
#### 2. affinity_parallelism_model
|
||
- **Art:** Python-Skript (`python_script`)
|
||
- **Zielplattform:** Linux Userspace
|
||
- **Sprache:** Python
|
||
- **Zweck:** Simulation und Analyse der Wechselwirkungen zwischen Affinität und Parallelität. Berechnung von Effektgrößen und Erstellung zusammenfassender Kennzahlen.
|
||
- **Verfügbare API-Funktion:**
|
||
- `simulate_effects(parallelism_level, affinity_type) → effect_summary`
|
||
Führt eine Simulation basierend auf dem gewählten Parallelitätsgrad und dem Affinitätsmodus aus und gibt einen Effektbericht zurück.
|
||
- **Datentypen:**
|
||
- `EffectSummary` (JSON):
|
||
- `bandwidth`
|
||
- `retry_tail`
|
||
|
||
#### 3. experiment_documentation
|
||
- **Art:** Nur-Dokumentation (`doc_only`)
|
||
- **Zielplattform:** gemischt
|
||
- **Sprache:** Text/Markdown
|
||
- **Zweck:** Enthält eine detaillierte Beschreibung der Versuchsaufbauten, Hypothesen, methodischen Annahmen und Beobachtungen.
|
||
|
||
---
|
||
|
||
## Installation & Nutzung
|
||
|
||
### Voraussetzungen
|
||
- Python ≥ 3.8
|
||
- Linux-Umgebung oder kompatible Shell
|
||
- Pandas (für Analysen und CSV-Verarbeitung)
|
||
- Matplotlib oder Seaborn (optional für grafische Auswertungen)
|
||
|
||
### Beispielaufruf
|
||
1. Repository klonen:
|
||
`git clone https://git.donau2space.de/Mika/affinity_and_parallelism_interaction`
|
||
|
||
2. Abhängigkeiten installieren:
|
||
`pip install -r requirements.txt`
|
||
|
||
3. Simulation ausführen (Beispiel):
|
||
`python affinity_parallelism_model.py --parallelism_level 4 --affinity_type socket`
|
||
|
||
---
|
||
|
||
## Typische Use-Cases
|
||
- Analyse der Auswirkung von Prozess-Affinität auf das Parallelverhalten.
|
||
- Quantitative Bewertung der Bandbreitenverteilung unter verschiedenen Parallelisierungsszenarien.
|
||
- Untersuchung von Trade-offs zwischen Retry-Verhalten und Systemauslastung.
|
||
- Entwicklung von Scheduling-Strategien für Multicore-Systeme.
|
||
|
||
---
|
||
|
||
## Struktur & mögliche Erweiterungen
|
||
- **Daten:** `effect_sizes_table` – zentrale Quelle für Messergebnisse
|
||
- **Simulation:** `affinity_parallelism_model` – Analyse- und Simulationslogik
|
||
- **Dokumentation:** `experiment_documentation` – methodischer Kontext
|
||
|
||
Erweiterungsmöglichkeiten:
|
||
- Ergänzung weiterer Datensätze für andere Hardwarekonfigurationen
|
||
- Integration zusätzlicher Metriken (z. B. Latenzvarianz)
|
||
- Erweiterung des Python-Skripts um CLI-Parameter und Konfigurationsdateien
|
||
|
||
---
|
||
|
||
## Lizenz
|
||
Dieses Projekt steht unter der **MIT-Lizenz**.
|
||
|
||
Die hier dargestellten Inhalte wurden automatisch mittels KI erzeugt. Nutzung und Weiterverarbeitung erfolgen auf eigenes Risiko. |