blob: 585309de51a384538600ef3af2891b0e9e21ac2a [file] [log] [blame]
#!/boot/bin/sh
#
# Copyright 2018 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
#
# This script runs all gfx benchmarks for the Garnet layer. It is called by
# benchmarks.sh.
# Scenic performance tests.
# bench(): Helper function for running Scenic benchmarks in this file.
#
# Arguments:
# $1 Label for benchmark.
# $2 Command that is being benchmarked.
# $3 Arguments to set_renderer_params
bench () {
BENCHMARK=$1
COMMAND=$2
RENDERER_PARAMS=$3
# Example of using runbench_exec:
# runbench_exec
# "${OUT_DIR}/${BENCHMARK}.json" # Output file path.
# "${RUN_SCENIC_BENCHMARK}" # Scenic benchmark runner, followed by
# # its arguments.
# --out_dir "${OUT_DIR}" # Output directory.
# --out_file "${OUT_DIR}/${BENCHMARK}.json" # Output file path.
# --benchmark_label "${BENCHMARK}" # Label for benchmark.
# --cmd "test_binary" # Command that is being benchmarked.
# --unshadowed --clipping_disabled # Arguments to set_renderer_params.
runbench_exec "${OUT_DIR}/${BENCHMARK}.json" \
"/pkgfs/packages/scenic_benchmarks/0/bin/run_scenic_benchmark.sh" \
--out_dir "${OUT_DIR}" \
--out_file "${OUT_DIR}/${BENCHMARK}.json" \
--benchmark_label "${BENCHMARK}" \
--cmd "${COMMAND}" \
${RENDERER_PARAMS}
}
#
# hello_scenic
#
bench "fuchsia.scenic.hello_scenic" "hello_scenic" ""
#
# image_grid_cpp
#
bench "fuchsia.scenic.image_grid_cpp_noclipping_noshadows" \
"set_root_view image_grid_cpp" \
"--unshadowed --clipping_disabled"
bench "fuchsia.scenic.image_grid_cpp_noshadows" \
"set_root_view image_grid_cpp" \
"--unshadowed --clipping_enabled"
bench "fuchsia.scenic.image_grid_cpp_ssdo" \
"set_root_view image_grid_cpp" \
"--screen_space_shadows --clipping_enabled"
bench "fuchsia.scenic.image_grid_cpp_shadow_map" \
"set_root_view image_grid_cpp" \
"--shadow_map --clipping_enabled"
bench "fuchsia.scenic.image_grid_cpp_moment_shadow_map" \
"set_root_view image_grid_cpp" \
"--moment_shadow_map --clipping_enabled"
#
# image_grid_cpp x3
#
IMAGE_GRID_CPP_X3_COMMAND="set_root_view tile_view image_grid_cpp image_grid_cpp image_grid_cpp"
bench "fuchsia.scenic.image_grid_cpp_x3_noclipping_noshadows" \
"${IMAGE_GRID_CPP_X3_COMMAND}" \
"--unshadowed --clipping_disabled"
bench "fuchsia.scenic.image_grid_cpp_x3_noshadows" \
"${IMAGE_GRID_CPP_X3_COMMAND}" \
"--unshadowed --clipping_enabled"
bench "fuchsia.scenic.image_grid_cpp_x3_ssdo" \
"${IMAGE_GRID_CPP_X3_COMMAND}" \
"--screen_space_shadows --clipping_enabled"
bench "fuchsia.scenic.image_grid_cpp_x3_shadow_map" \
"${IMAGE_GRID_CPP_X3_COMMAND}" \
"--shadow_map --clipping_enabled"
bench "fuchsia.scenic.image_grid_cpp_x3_moment_shadow_map" \
"${IMAGE_GRID_CPP_X3_COMMAND}" \
"--moment_shadow_map --clipping_enabled"