From dd758c371c6f237cf239e708d8c914e3ccaedd46 Mon Sep 17 00:00:00 2001 From: Jesse Keating Date: Mon, 8 Dec 2014 13:40:20 -0800 Subject: [PATCH] Add a maximum concurrency option to rps runner The rps benchmark runner has no throttle for how many total concurrent test threads it will run. For some tests, like nova boot tests, cloud capacity for instances could be reached before a suitable amount of tests. For that reason this introduces a throttle of maximum concurrent scenario threads that are allowed to be live. Much like how tasks are divvied up across workers, concurrency slots are divvied up across workers as well. Each worker gets a max and will wait for a thread to finish before adding a new one once the max has been reached. If no max concurrency is provided, the concurrency is pinned to the times to execute. Co-Authored-By: Jesse Keating Co-Authored-By: Marian Krcmarik Implements: blueprint rps-benchmark-with-max-concurrency Change-Id: I488322eb9b50afe58801d28be8ad37f0cc5aeb07 --- rally-jobs/rally.yaml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/rally-jobs/rally.yaml b/rally-jobs/rally.yaml index 7d6a6978..fdd50e03 100755 --- a/rally-jobs/rally.yaml +++ b/rally-jobs/rally.yaml @@ -252,6 +252,18 @@ failure_rate: max: 0 + - + args: + sleep: 0.001 + runner: + type: "rps" + times: 200 + rps: 20 + max_concurrency: 10 + sla: + failure_rate: + max: 0 + - args: sleep: 0.1