Commit | Line | Data |
---|---|---|
a44af49d | 1 | #!/bin/bash |
c0c0989a MJ |
2 | # |
3 | # SPDX-License-Identifier: LGPL-2.1-only | |
a44af49d ZT |
4 | |
5 | CURDIR=$(dirname $0)/ | |
6 | TESTDIR=$CURDIR/.. | |
7 | source $TESTDIR/utils/tap.sh | |
8 | ||
9 | plan_tests 1 | |
10 | ||
11 | : ${ITERS:=20} | |
12 | : ${NR_EVENTS:=7000000} | |
13 | : ${NR_CPUS:=1} | |
14 | ||
15 | : ${TIME:="./$CURDIR/ptime"} | |
16 | ||
17 | : ${PROG_NOTRACING:="./$CURDIR/bench1 $NR_CPUS $NR_EVENTS"} | |
18 | : ${PROG_TRACING:="./$CURDIR/bench2 $NR_CPUS $NR_EVENTS"} | |
19 | ||
20 | CMD_NOTRACING="$TIME '$PROG_NOTRACING >/dev/null 2>&1'" | |
21 | CMD_TRACING="$TIME '$PROG_TRACING >/dev/null 2>&1'" | |
22 | ||
23 | time_notrace=0 | |
24 | for i in $(seq $ITERS); do | |
25 | echo 3 >/proc/sys/vm/drop_caches | |
26 | time_notrace="$time_notrace+$(sh -c "$CMD_NOTRACING")" | |
27 | done | |
28 | ||
29 | lttng-sessiond -d --no-kernel | |
30 | lttng -q create | |
31 | lttng -q enable-event -u -a | |
32 | lttng -q start | |
33 | ||
34 | time_trace=0 | |
35 | for i in $(seq $ITERS); do | |
36 | echo 3 >/proc/sys/vm/drop_caches | |
37 | time_trace="$time_trace+$(sh -c "$CMD_TRACING")" | |
38 | done | |
39 | ||
40 | lttng -q stop | |
41 | lttng -q destroy | |
42 | ||
43 | pass "Trace benchmark" | |
44 | diag "Average tracing overhead per event is $(echo "scale=6;( ($time_trace) - ($time_notrace) ) / $ITERS / $NR_EVENTS" | bc -l)s" |