Problem Statement
Currently nimbus-eth1 benchmark is running as an independent systemd service which just keeps looking for newer commits in nimbus-eth1 github repo and runs the benchmark for it.
This process is not smart enough to take into account about missed benchmarks in the past and if theres no new commits this service just does nothing and restarts 30 seconds later.
We currently also utilise bench-01 only for short benchmark runs and bench-02 for long benchmark runs.
There comes a time when the host has no work to do because short benchmark is supposed to finish quite faster.
The setup is also not scaleable and if we add new hosts to the setup we will have to find a way to orchestrate a queue and decide what job the new host should run : short or long benchmark.
Action Items
Problem Statement
Currently
nimbus-eth1benchmark is running as an independentsystemdservice which just keeps looking for newer commits innimbus-eth1github repo and runs the benchmark for it.This process is not smart enough to take into account about missed benchmarks in the past and if theres no new commits this service just does nothing and restarts 30 seconds later.
We currently also utilise
bench-01only forshortbenchmark runs andbench-02forlongbenchmark runs.There comes a time when the host has no work to do because short benchmark is supposed to finish quite faster.
The setup is also not scaleable and if we add new hosts to the setup we will have to find a way to orchestrate a queue and decide what job the new host should run : short or long benchmark.
Action Items
Implement a Queue based system which keeps track of pending jobs. In this case we can pick
Jenkins.Its easier to visualise and manage the queue in Jenkins.
Update report generation script to move on from timestamp based approach to git history based comparison.
We need to decide on the logic for Queue population by Job Type: I would assume that completing all short benchmarks would have higher priority over completing all long benchmarks, but this needs to be discussed and agreed upon with @arnetheduck and @jakubgs