5 source $TESTDIR/utils
/tap.sh
10 : ${NR_EVENTS:=7000000}
13 : ${TIME:="./$CURDIR/ptime"}
15 : ${PROG_NOTRACING:="./$CURDIR/bench1 $NR_CPUS $NR_EVENTS"}
16 : ${PROG_TRACING:="./$CURDIR/bench2 $NR_CPUS $NR_EVENTS"}
18 function signal_cleanup
()
20 killall lttng-sessiond
23 trap signal_cleanup SIGTERM SIGINT
25 CMD_NOTRACING
="$TIME '$PROG_NOTRACING >/dev/null 2>&1'"
26 CMD_TRACING
="$TIME '$PROG_TRACING >/dev/null 2>&1'"
29 for i
in $
(seq $ITERS); do
30 if [[ $EUID -eq 0 ]]; then
31 echo 3 >/proc
/sys
/vm
/drop_caches
33 time_notrace
="$time_notrace+$(sh -c "$CMD_NOTRACING")"
37 lttng-sessiond
-d --no-kernel
38 lttng
-q create
--snapshot
39 lttng
-q enable-event
-u -a
43 for i
in $
(seq $ITERS); do
44 if [[ $EUID -eq 0 ]]; then
45 echo 3 >/proc
/sys
/vm
/drop_caches
47 time_trace
="$time_trace+$(sh -c "$CMD_TRACING")"
52 killall lttng-sessiond
54 pass
"Trace benchmark"
55 S_PER_EVENT
=$
(echo "( ($time_trace) - ($time_notrace) ) / $ITERS / $NR_EVENTS" |
bc -l)
56 NS_PER_EVENT
=$
(echo "$S_PER_EVENT * 1000000000" |
bc -l)
58 NS_PER_EVENT
=${NS_PER_EVENT%%.*}
60 diag
"Average tracing overhead per event is ${NS_PER_EVENT}ns"