From 18a5e33ab34d0a17365f90060c1ae0e7fb0f3bfd Mon Sep 17 00:00:00 2001 From: Samuel Just Date: Fri, 13 Mar 2020 15:58:44 -0700 Subject: [PATCH] suites/rados/thrash: add rados-high-concurrency Signed-off-by: Samuel Just (cherry picked from commit ceb8e457e7c3bd1ce1c14833c091f517a024d6d5) --- .../radosbench-high-concurrency.yaml | 49 +++++++++++++++++++ qa/tasks/radosbench.py | 3 ++ 2 files changed, 52 insertions(+) create mode 100644 qa/suites/rados/thrash/workloads/radosbench-high-concurrency.yaml diff --git a/qa/suites/rados/thrash/workloads/radosbench-high-concurrency.yaml b/qa/suites/rados/thrash/workloads/radosbench-high-concurrency.yaml new file mode 100644 index 0000000000000..902c4b56a1e5a --- /dev/null +++ b/qa/suites/rados/thrash/workloads/radosbench-high-concurrency.yaml @@ -0,0 +1,49 @@ +overrides: + ceph: + conf: + client.0: + debug ms: 1 + debug objecter: 20 + debug rados: 20 +tasks: +- full_sequential: + - radosbench: + clients: [client.0] + concurrency: 128 + size: 8192 + time: 90 + - radosbench: + clients: [client.0] + concurrency: 128 + size: 8192 + time: 90 + - radosbench: + clients: [client.0] + concurrency: 128 + size: 8192 + time: 90 + - radosbench: + clients: [client.0] + concurrency: 128 + size: 8192 + time: 90 + - radosbench: + clients: [client.0] + concurrency: 128 + size: 8192 + time: 90 + - radosbench: + clients: [client.0] + concurrency: 128 + size: 8192 + time: 90 + - radosbench: + clients: [client.0] + concurrency: 128 + size: 8192 + time: 90 + - radosbench: + clients: [client.0] + concurrency: 128 + size: 8192 + time: 90 diff --git a/qa/tasks/radosbench.py b/qa/tasks/radosbench.py index f840e646dd65c..90b21a5d88b26 100644 --- a/qa/tasks/radosbench.py +++ b/qa/tasks/radosbench.py @@ -23,6 +23,7 @@ def task(ctx, config): time: pool: size: write size to use + concurrency: max number of outstanding writes (16) objectsize: object size to use unique_pool: use a unique pool, defaults to False ec_pool: create an ec pool, defaults to False @@ -83,6 +84,7 @@ def task(ctx, config): pool = manager.create_pool_with_unique_name(erasure_code_profile_name=profile_name) size = config.get('size', 65536) + concurrency = config.get('concurrency', 16) osize = config.get('objectsize', 65536) sizeargs = ['-b', str(size)] if osize != 0 and osize != size: @@ -102,6 +104,7 @@ def task(ctx, config): '--no-log-to-stderr', '--name', role] + sizeargs + + ['-t', str(concurrency)] + ['-p' , pool, 'bench', str(60), "write", "--no-cleanup" ]).format(tdir=testdir), -- 2.39.5