From: Samuel Just Date: Fri, 13 Mar 2020 22:58:44 +0000 (-0700) Subject: suites/rados/thrash: add rados-high-concurrency X-Git-Tag: v14.2.10~45^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=abd30903108ee13a5bdad361b89ba7ccd5f0d18e;p=ceph.git suites/rados/thrash: add rados-high-concurrency Signed-off-by: Samuel Just (cherry picked from commit ceb8e457e7c3bd1ce1c14833c091f517a024d6d5) Conflicts: qa/tasks/radosbench.py - size is treated differently in nautilus --- 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 000000000000..902c4b56a1e5 --- /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 1a8a0ab19bfd..c4f1ab62d85d 100644 --- a/qa/tasks/radosbench.py +++ b/qa/tasks/radosbench.py @@ -21,6 +21,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 @@ -76,6 +77,7 @@ def task(ctx, config): else: pool = manager.create_pool_with_unique_name(erasure_code_profile_name=profile_name) + concurrency = config.get('concurrency', 16) osize = config.get('objectsize', 65536) if osize is 0: objectsize = [] @@ -94,6 +96,7 @@ def task(ctx, config): '--no-log-to-stderr', '--name', role] + size + objectsize + + ['-t', str(concurrency)] + ['-p' , pool, 'bench', str(60), "write", "--no-cleanup" ]).format(tdir=testdir),