From 13632f2414fc911a0e983bb5d5eb644a7c11a1fe Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Mon, 13 May 2019 16:10:23 +0100 Subject: benchmarks/gem_wsim: Perturb static_vcs selection across clients Use the client id to alternate the static_vcs balancer (-b context) across clients with the round robin flag (-R) - otherwise all clients end up on vcs0 and do not match the context balancing employed by media-driver. v2: Put it behind the -R flag. v3: Don't skip -R flag for -b context in scripts/media-bench.pl Signed-off-by: Chris Wilson Cc: Tvrtko Ursulin Reviewed-by: Tvrtko Ursulin --- benchmarks/gem_wsim.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'benchmarks') diff --git a/benchmarks/gem_wsim.c b/benchmarks/gem_wsim.c index afb9644d..48568ce4 100644 --- a/benchmarks/gem_wsim.c +++ b/benchmarks/gem_wsim.c @@ -939,7 +939,7 @@ alloc_step_batch(struct workload *wrk, struct w_step *w, unsigned int flags) static void prepare_workload(unsigned int id, struct workload *wrk, unsigned int flags) { - unsigned int ctx_vcs = 0; + unsigned int ctx_vcs; int max_ctx = -1; struct w_step *w; int i; @@ -948,8 +948,10 @@ prepare_workload(unsigned int id, struct workload *wrk, unsigned int flags) wrk->prng = rand(); wrk->run = true; + ctx_vcs = 0; if (flags & INITVCSRR) - wrk->vcs_rr = id & 1; + ctx_vcs = id & 1; + wrk->vcs_rr = ctx_vcs; if (flags & GLOBAL_BALANCE) { int ret = pthread_mutex_init(&wrk->mutex, NULL); -- cgit v1.2.3