Files
strans/bench.sh

44 lines
704 B
Bash
Executable File

#!/bin/sh
set -eu
cd "$(dirname "$0")"
strans_pid=
perf_pid=
cleanup()
{
trap - 0 1 2 15
if test -n "$perf_pid"; then
kill -INT "$perf_pid" 2>/dev/null || true
wait "$perf_pid" 2>/dev/null || true
fi
if test -n "$strans_pid"; then
kill "$strans_pid" 2>/dev/null || true
wait "$strans_pid" 2>/dev/null || true
fi
}
trap cleanup 0 1 2 15
./strans map "$@" &
strans_pid=$!
sleep 1
kill -0 "$strans_pid"
# warm up the renderer
./bench/bench bench/bench.keys 100
echo "renderer warmed up"
perf record -g -o bench/perf.data -p "$strans_pid" &
perf_pid=$!
sleep 1
kill -0 "$perf_pid"
./bench/bench bench/bench.keys 100
kill -INT "$perf_pid"
wait "$perf_pid" 2>/dev/null || true
perf_pid=