I am currently trying to migrate the bitbucket pipelines to be executed on a local server. I realise that my pipeline has 3 main parallel executions. Each parallel execution has 17+ steps that should execute in parallel.
It seems that it is required to have as many self hosted runners as many parallel steps I need.
The problem is that once I run 25 runners in parallel each step in the parallel section takes much longer.
A step running on Bitbucket pipelines cloud takes 6 minutes., while on my local server now takes 17-20 minutes.
I am using the linux docker runner.
Host server has 128 gb ram, 20 core CPU.
The docker environment has resources scaled to enable usage of the 20 CPUs and 96GB of memory.
The host server runs 25 runners.