X-Git-Url: https://git.liburcu.org/?p=urcu.git;a=blobdiff_plain;f=tests%2Fbenchmark%2Frun-urcu-tests.sh;h=751514a7a6525069ea56a8c315e56431c9a3f980;hp=1df988add7b806f3e7e739f1667003e8572b04ec;hb=748f9af1f0e61f6f5133b45ed7dcf1f071246b9e;hpb=2f6618651c31c05ba1adbb5cdcf0d92980c38f38 diff --git a/tests/benchmark/run-urcu-tests.sh b/tests/benchmark/run-urcu-tests.sh index 1df988a..751514a 100755 --- a/tests/benchmark/run-urcu-tests.sh +++ b/tests/benchmark/run-urcu-tests.sh @@ -3,7 +3,7 @@ #first parameter: seconds per test DURATION=$1 -if [ "x$DURATION" = "x" ]; then +if [ "x${DURATION}" = "x" ]; then echo "usage: $0 [DURATION]" exit 1 fi @@ -30,16 +30,13 @@ fi # fraction: 15 * 29 = # scalabilit NUM_CPUS * 15 # reader 15 * 23 = -NUM_TESTS=$(( 19 + 435 + ( ${NUM_CPUS} * 15 ) + 345 )) +NUM_TESTS=$(( 19 + 435 + ( NUM_CPUS * 15 ) + 345 )) plan_tests ${NUM_TESTS} #run all tests diag "Executing URCU tests" -tmpfile= -trap cleanup SIGINT SIGTERM EXIT -tmpfile=$(mktemp) #extra options, e.g. for setting affinity on even CPUs : #EXTRA_OPTS=$(for a in $(seq 0 2 127); do echo -n "-a ${a} "; done) @@ -67,16 +64,16 @@ BATCH_ARRAY="1 2 4 8 16 32 64 128 256 512 1024 2048 4096 8192 16384 32768 65536 131072 262144" BATCH_TEST_ARRAY="test_urcu_gc" -NR_WRITERS=$((${NUM_CPUS} / 2)) +NR_WRITERS=$((NUM_CPUS / 2)) +NR_READERS=$((NUM_CPUS - NR_WRITERS)) -NR_READERS=$((${NUM_CPUS} - ${NR_WRITERS})) for BATCH_SIZE in ${BATCH_ARRAY}; do for TEST in ${BATCH_TEST_ARRAY}; do - okx $test_time_bin ./${TEST} ${NR_READERS} ${NR_WRITERS} ${DURATION} \ - -d 0 -b ${BATCH_SIZE} ${EXTRA_OPTS} 2>${tmpfile} - cat $tmpfile | while read line; do - echo "# $line" - done + okx ${TEST_TIME_BIN} ./"${TEST}" "${NR_READERS}" "${NR_WRITERS}" "${DURATION}" \ + -d 0 -b "${BATCH_SIZE}" ${EXTRA_OPTS} 2>"${TMPFILE}" + while read line; do + echo "## $line" + done <"${TMPFILE}" done done @@ -93,16 +90,16 @@ diag "Executing update fraction test" WDELAY_ARRAY="0 1 2 4 8 16 32 64 128 256 512 1024 2048 4096 8192 16384 32768 65536 131072 262144 524288 1048576 2097152 4194304 8388608 16777216 33554432 67108864 134217728" -NR_WRITERS=$((${NUM_CPUS} / 2)) +NR_WRITERS=$((NUM_CPUS / 2)) +NR_READERS=$((NUM_CPUS - NR_WRITERS)) -NR_READERS=$((${NUM_CPUS} - ${NR_WRITERS})) for WDELAY in ${WDELAY_ARRAY}; do for TEST in ${TEST_ARRAY}; do - okx $test_time_bin ./${TEST} ${NR_READERS} ${NR_WRITERS} ${DURATION} \ - -d ${WDELAY} ${EXTRA_OPTS} 2>$tmpfile - cat $tmpfile | while read line; do - echo "# $line" - done + okx ${TEST_TIME_BIN} ./"${TEST}" "${NR_READERS}" "${NR_WRITERS}" "${DURATION}" \ + -d "${WDELAY}" ${EXTRA_OPTS} 2>"${TMPFILE}" + while read line; do + echo "## $line" + done <"${TMPFILE}" done done @@ -117,11 +114,11 @@ NR_WRITERS=0 for NR_READERS in $(xseq 1 ${NUM_CPUS}); do for TEST in ${TEST_ARRAY}; do - okx $test_time_bin ./${TEST} ${NR_READERS} ${NR_WRITERS} ${DURATION} \ - ${EXTRA_OPTS} 2>$tmpfile - cat $tmpfile | while read line; do - echo "# $line" - done + okx ${TEST_TIME_BIN} ./"${TEST}" "${NR_READERS}" "${NR_WRITERS}" "${DURATION}" \ + ${EXTRA_OPTS} 2>"${TMPFILE}" + while read line; do + echo "## $line" + done <"${TMPFILE}" done done @@ -140,10 +137,10 @@ READERCSLEN_ARRAY="0 1 2 4 8 16 32 64 128 256 512 1024 2048 4096 8192 16384 3276 for READERCSLEN in ${READERCSLEN_ARRAY}; do for TEST in ${TEST_ARRAY}; do - okx $test_time_bin ./${TEST} ${NR_READERS} ${NR_WRITERS} ${DURATION} \ - -c ${READERCSLEN} ${EXTRA_OPTS} 2>$tmpfile - cat $tmpfile | while read line; do - echo "# $line" - done + okx ${TEST_TIME_BIN} ./"${TEST}" "${NR_READERS}" "${NR_WRITERS}" "${DURATION}" \ + -c "${READERCSLEN}" ${EXTRA_OPTS} 2>"${TMPFILE}" + while read line; do + echo "## $line" + done <"${TMPFILE}" done done