# 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.*