affinity_effect_on_band_str.../readme_md
2026-03-19 13:57:27 +00:00

93 lines
No EOL
3.9 KiB
Text
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Affinity Effect on Band Structure
## Überblick
Dieses Repository dokumentiert das Experiment **affinity_effect_on_band_structure**. Ziel ist die Untersuchung des Einflusses der Worker-Affinität auf die Struktur und Verteilung des Resonanzbands in einem verteilten System. Zwei Betriebsmodi wurden analysiert: *affinity enforced* und *affinity off*.
**Hinweis:**
Alle Inhalte wurden per KI generiert.
Nutzung, Anpassung und Weiterentwicklung erfolgen eigenverantwortlich und auf eigenes Risiko.
Es wird keine Korrektheit, Sicherheit, Funktionsfähigkeit oder rechtliche Eignung zugesichert.
**Artikel:** [https://donau2space.de/tag-182-run-28-single-toggle-klebt-das-resonanzband-an-worker-affinitaet-oder-nur-an-der-queue/](https://donau2space.de/tag-182-run-28-single-toggle-klebt-das-resonanzband-an-worker-affinitaet-oder-nur-an-der-queue/)
**Git Repository:** [https://git.donau2space.de/Mika/affinity_effect_on_band_structure](https://git.donau2space.de/Mika/affinity_effect_on_band_structure)
---
## Inhalt des Repositories
Das Repository enthält mehrere Python-Skripte zur Analyse der Bandstruktur und der Worker-Affinität.
### Artefaktübersicht
#### 1. artifact_1_bandwidth_analysis
- **Art:** python_script
- **Ziel:** Linux Userspace
- **Sprachen:** Python
- **Zweck:** Analyse der Bandbreite und des Bandzentrums in beiden Affinitätsmodi.
- **API-Funktionen:**
- `analyze_bandwidth(data_enforced, data_randomized)` Berechnet Bandbreiten- und Bandzentrum-Werte.
- **Datenstrukturen:**
- `band_analysis_result` (JSON) mit Feldern: *band_center*, *band_width*
#### 2. artifact_2_worker_binding_analysis
- **Art:** python_script
- **Ziel:** Linux Userspace
- **Sprachen:** Python
- **Zweck:** Untersuchung der Bindung von Bandpopulationen an Worker-IDs in beiden Modi.
- **API-Funktionen:**
- `analyze_worker_binding(data_enforced, data_randomized)` Ermittelt Bindungsstatistiken der Worker.
- **Datenstrukturen:**
- `worker_binding_result` (JSON) mit Feldern: *worker_id*, *population_percentage*
#### 3. artifact_3_retry_tail_analysis
- **Art:** python_script
- **Ziel:** Linux Userspace
- **Sprachen:** Python
- **Zweck:** Analyse der Retry-Tails in Bezug auf Worker-Affinität.
- **API-Funktionen:**
- `analyze_retry_tails(data_enforced, data_randomized)` Berechnet Retry-Tail-Werte.
- **Datenstrukturen:**
- `retry_tail_result` (JSON) mit Feld: *retry_tail_p99*
---
## Installation & Nutzung
### Voraussetzungen
- Python 3.8 oder neuer
- Empfohlene Abhängigkeiten: numpy, pandas, matplotlib
### Installation
1. Repository klonen:
`git clone https://git.donau2space.de/Mika/affinity_effect_on_band_structure`
2. Abhängigkeiten installieren:
`pip install -r requirements.txt`
### Nutzung
Die Skripte werden direkt im Terminal oder über Python ausgeführt:
- Beispiel:
`python artifact_1_bandwidth_analysis.py --input data/affinity_measurements.json`
Eingabedaten liegen als JSON-Dateien mit Messwerten für *affinity enforced* und *affinity off* vor.
---
## Typische Use-Cases
- Vergleich der Bandstruktur zwischen verschiedenen Affinitätsmodi.
- Bewertung der Auswirkungen von Worker-Zuweisungen auf Systemleistung.
- Analyse von Retry-Tail-Verhalten in Hochlastsituationen.
- Visualisierung der Resonanzbandverteilung pro Worker-ID.
---
## Struktur & Erweiterbarkeit
Das Repository ist modular aufgebaut. Jedes Python-Skript implementiert eine isolierte Analysefunktion mit klar definierten JSON-Ein- und -Ausgabeformaten. Dies erleichtert die Integration neuer Analyseverfahren oder die Erweiterung um zusätzliche Metriken.
Neue Artefakte sollten die bestehende API-Struktur übernehmen und in der *band_analysis_pipeline* eingebunden werden.
---
## Lizenz
Dieses Projekt steht unter der **MIT-Lizenz**.
---
*Diese README-Datei wurde automatisch erzeugt. Nutzung erfolgt auf eigene Verantwortung.*