blob: 7c2aed5d5cb82f2fe8b6b042e874b1dc0cd5f361 [file] [log] [blame]
#!/boot/bin/sh
#
# Usage: run_startup_benchmark.sh \
# --out_dir <trace output dir> \
# --out_file <benchmark output file path> \
# --benchmark_label <benchmark label> \
# --cmd <cmd to benchmark> \
# --flutter_app_name <flutter application name>
#
while [ "$1" != "" ]; do
case "$1" in
--out_dir)
OUT_DIR="$2"
shift
;;
--out_file)
OUT_FILE="$2"
shift
;;
--benchmark_label)
BENCHMARK_LABEL="$2"
shift
;;
--cmd)
CMD="$2"
shift
;;
--flutter_app_name)
FLUTTER_APP_NAME="$2"
shift
;;
*)
break
;;
esac
shift
done
DATE=`date +%Y-%m-%dT%H:%M:%S`
TRACE_FILE=$OUT_DIR/trace.$DATE.json
echo "== $BENCHMARK_LABEL: Killing processes..."
killall root_presenter*; killall scenic*; killall basemgr*
killall view_manager*; killall flutter*; killall set_root_view*
echo "== $BENCHMARK_LABEL: Tracing..."
echo $TRACE_FILE
trace record --categories=dart,flutter,ledger,modular,vfs --duration=10 \
--buffer-size=12 --output-file=$TRACE_FILE $CMD
echo "== $BENCHMARK_LABEL: Processing trace..."
/pkgfs/packages/startup_benchmarks/0/bin/process_startup_trace \
-test_suite_name="${BENCHMARK_LABEL}" \
-flutter_app_name="${FLUTTER_APP_NAME}" \
-benchmarks_out_filename="${OUT_FILE}" "${TRACE_FILE}"