1*d83cc019SAndroid Build Coastguard Worker# This outputs a graph of time(N), the us it takes to execute N empty batches 2*d83cc019SAndroid Build Coastguard Worker# performing the associated context operation each time. 3*d83cc019SAndroid Build Coastguard Worker# e.g. 110 59 34 22 16 13 11 10 10 10 9 4 1.4 1.4 1.2 0.9 0.8 4*d83cc019SAndroid Build Coastguard Worker# As a summary, print the number of nop/s (so that it matches the bigger is 5*d83cc019SAndroid Build Coastguard Worker# better motif of fps). 6*d83cc019SAndroid Build Coastguard Worker 7*d83cc019SAndroid Build Coastguard Worker[ -e $IGT_BENCHMARKS/gem_exec_ctx ] || return 1 8*d83cc019SAndroid Build Coastguard Workersudo -n true || return 1 9*d83cc019SAndroid Build Coastguard Worker 10*d83cc019SAndroid Build Coastguard Workerfor i in nop default switch create; do 11*d83cc019SAndroid Build Coastguard Worker name="gem:exec:ctx:$i:single" 12*d83cc019SAndroid Build Coastguard Worker test_name="$test_name $name" 13*d83cc019SAndroid Build Coastguard Worker eval "${name}_run() { sudo $IGT_BENCHMARKS/gem_exec_ctx -s -b $i -r \$1 ; }" 14*d83cc019SAndroid Build Coastguard Worker 15*d83cc019SAndroid Build Coastguard Worker name="gem:exec:ctx:$i:forked" 16*d83cc019SAndroid Build Coastguard Worker test_name="$test_name $name" 17*d83cc019SAndroid Build Coastguard Worker eval "${name}_run() { sudo $IGT_BENCHMARKS/gem_exec_ctx -f -s -b $i -r \$1 ; }" 18*d83cc019SAndroid Build Coastguard Worker 19*d83cc019SAndroid Build Coastguard Worker name="gem:exec:ctx:$i:continuous" 20*d83cc019SAndroid Build Coastguard Worker test_name="$test_name $name" 21*d83cc019SAndroid Build Coastguard Worker eval "${name}_run() { sudo $IGT_BENCHMARKS/gem_exec_ctx -b $i -r \$1 ; }" 22*d83cc019SAndroid Build Coastguard Workerdone 23*d83cc019SAndroid Build Coastguard Worker 24*d83cc019SAndroid Build Coastguard Workertest_exec_time=3 25*d83cc019SAndroid Build Coastguard Workertest_invert=1 26