Skip to content

Latest commit

 

History

History
75 lines (48 loc) · 2.42 KB

File metadata and controls

75 lines (48 loc) · 2.42 KB

Benchmarking

Rahmenbedingungen

Verwendete Hardware

  • CPU: Intel i5 8400 6 x 2.8 GHz (4.2 GHz Boost)
  • Hauptspeicher: 16GB DDR4
  • Hintergrundspeicher: PCIe SSD (Lesen 3100 MB/s und Schreiben 1600 MB/s)

Weitere Anmerkungen

Aus Performancegründen werden die Ergebnisse der "Bundestags-Query" in einer materialisierten Sicht gehalten. Beim Einfügen von neuen Stimmen wird diese Sicht jeweils neu berechnet, sodass stets das aktuellste Ergebnis sichtbar ist. Die Neuberechnung der Mandate beansprucht ~85ms (4ms Planning time) unter Verwendung Aggregaten für die Erst- und Zweitstimmen.

Reproduktion

Voraussetzungen: Python und gunicorn

Starten des backends:

cd backend
pip install -r requirements.txt
sh gunicorn.sh

Starten von locust:

cd benchmark
pip install -r requirements.txt
locust

Die Benchmarkingschnittstelle sollte unter http://localhost:8089 erreichbar sein. Zum Anpassen des Parameters t muss locustfile.py geändert werden. n kann in der Webschnittstelle angepasst werden.

Messreihen (Linux)

1. Messreihe

Wartezeit t = 10, Anzahl Terminals n = 100

Report

2. Messreihe

Wartezeit t = 1, Anzahl Terminals n = 100

Report

3. Messreihe

Wartezeit t = 1, Anzahl Terminals n = 500

Report

4. Messreihe

Wartezeit t = 0.1, Anzahl Terminals n = 100

Report

5. Messreihe

Wartezeit t = 1, Anzahl Terminals n = 100

Der Wahlkreis wird diesmal zufällig ausgewählt. Dadurch lassen sich jedoch keine Performanceunterschiede zur 2. Messreihe beobachten, weswegen bei vorherigen Messreihen ein fester Wahlkreis aus Gründen der Übersichtlichkeit gewählt wurde.

Report