| .. | .. |
|---|
| 1 | 1 | #!/bin/bash |
|---|
| 2 | 2 | # SPDX-License-Identifier: GPL-2.0+ or MIT |
|---|
| 3 | 3 | |
|---|
| 4 | +NR_CPUS=`grep '^processor' /proc/cpuinfo | wc -l` |
|---|
| 5 | + |
|---|
| 4 | 6 | EXTRA_ARGS=${@} |
|---|
| 5 | 7 | |
|---|
| 6 | 8 | OLDIFS="$IFS" |
|---|
| .. | .. |
|---|
| 13 | 15 | "-T m" |
|---|
| 14 | 16 | "-T m -M" |
|---|
| 15 | 17 | "-T i" |
|---|
| 18 | + "-T r" |
|---|
| 16 | 19 | ) |
|---|
| 17 | 20 | |
|---|
| 18 | 21 | TEST_NAME=( |
|---|
| .. | .. |
|---|
| 23 | 26 | "memcpy" |
|---|
| 24 | 27 | "memcpy with barrier" |
|---|
| 25 | 28 | "increment" |
|---|
| 29 | + "membarrier" |
|---|
| 26 | 30 | ) |
|---|
| 27 | 31 | IFS="$OLDIFS" |
|---|
| 28 | 32 | |
|---|
| 29 | 33 | REPS=1000 |
|---|
| 30 | 34 | SLOW_REPS=100 |
|---|
| 35 | +NR_THREADS=$((6*${NR_CPUS})) |
|---|
| 31 | 36 | |
|---|
| 32 | 37 | function do_tests() |
|---|
| 33 | 38 | { |
|---|
| 34 | 39 | local i=0 |
|---|
| 35 | 40 | while [ "$i" -lt "${#TEST_LIST[@]}" ]; do |
|---|
| 36 | 41 | echo "Running test ${TEST_NAME[$i]}" |
|---|
| 37 | | - ./param_test ${TEST_LIST[$i]} -r ${REPS} ${@} ${EXTRA_ARGS} || exit 1 |
|---|
| 42 | + ./param_test ${TEST_LIST[$i]} -r ${REPS} -t ${NR_THREADS} ${@} ${EXTRA_ARGS} || exit 1 |
|---|
| 38 | 43 | echo "Running compare-twice test ${TEST_NAME[$i]}" |
|---|
| 39 | | - ./param_test_compare_twice ${TEST_LIST[$i]} -r ${REPS} ${@} ${EXTRA_ARGS} || exit 1 |
|---|
| 44 | + ./param_test_compare_twice ${TEST_LIST[$i]} -r ${REPS} -t ${NR_THREADS} ${@} ${EXTRA_ARGS} || exit 1 |
|---|
| 40 | 45 | let "i++" |
|---|
| 41 | 46 | done |
|---|
| 42 | 47 | } |
|---|