From 05ca171aa9a6902614241f9685de2f62f30126d8 Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Fri, 3 Jun 2016 10:43:09 +0100 Subject: benchmarks/gem_exec_nop: Extend submission to check write inter-engine sync Currently, we look at the throughput for submitting a read batch to a single engine or any. The kernel optimises for this by allowing multiple engine to read at the same time, but writes are exclusive to a single engine. So lets try to measure the impact of inserting the barriers between writes on different engines. Signed-off-by: Chris Wilson --- benchmarks/ezbench.d/gem_exec_nop.test | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) (limited to 'benchmarks/ezbench.d') diff --git a/benchmarks/ezbench.d/gem_exec_nop.test b/benchmarks/ezbench.d/gem_exec_nop.test index 7f6cc00e..1c3c4b56 100644 --- a/benchmarks/ezbench.d/gem_exec_nop.test +++ b/benchmarks/ezbench.d/gem_exec_nop.test @@ -2,17 +2,28 @@ sudo -n true || return 1 for ring in rcs bcs vcs vecs all; do - name="gem:exec:nop:$ring:single" +while read label mode; do + name="gem:exec:$label:$ring:single" test_name="$test_name $name" - eval "${name}_run() { sudo $IGT_BENCHMARKS/gem_exec_nop -s -e $ring -r \$1 ; }" + eval "${name}_run() { sudo $IGT_BENCHMARKS/gem_exec_nop $mode -s -e $ring -r \$1 ; }" - name="gem:exec:nop:$ring:forked" + name="gem:exec:$label:$ring:single:forked" test_name="$test_name $name" - eval "${name}_run() { sudo $IGT_BENCHMARKS/gem_exec_nop -f -s -e $ring -r \$1 ; }" + eval "${name}_run() { sudo $IGT_BENCHMARKS/gem_exec_nop $mode -f -s -e $ring -r \$1 ; }" - name="gem:exec:nop:$ring:continuous" + name="gem:exec:$label:$ring:continuous" test_name="$test_name $name" - eval "${name}_run() { sudo $IGT_BENCHMARKS/gem_exec_nop -e $ring -r \$1 ; }" + eval "${name}_run() { sudo $IGT_BENCHMARKS/gem_exec_nop $mode -e $ring -r \$1 ; }" + + name="gem:exec:$label:$ring:continuous:forked" + test_name="$test_name $name" + eval "${name}_run() { sudo $IGT_BENCHMARKS/gem_exec_nop $mode -f -e $ring -r \$1 ; }" +done<