51891392d8
For each skp in the corpus, we start a fresh instance of Chromium (via puppeteer), draw the skp and measure that time. This process is repeated a fixed amount of repetitions and the median, the average, and the std deviation is reported to perf (as well as the individual datapoints as an FYI). Importantly (and something we'll need to change about SkottieFrames), we measure the average time between frames after unlocking the framerate. This ensures we account for the time needed by the GPU to actually draw (flush() returns after the GPU has all the instructions, but not necessarily has been able to draw). This implementation is very similar to the SkottieFrames code; a notable deviation is the repetitions are handled outside of the html, i.e. a new chrome window per run. I explored using content_shell, but noticed that requires building Chromium, which our infrastructure is not set up to do well. Change-Id: I14fdbdc951604d3fdf06e81a4be7e614d0e53c03 Reviewed-on: https://skia-review.googlesource.com/c/skia/+/295079 Commit-Queue: Kevin Lubick <kjlubick@google.com> Reviewed-by: Nathaniel Nifong <nifong@google.com> Reviewed-by: Eric Boren <borenet@google.com>
26 lines
1.2 KiB
Makefile
26 lines
1.2 KiB
Makefile
# This shows an example invocation presuming the user has built canvaskit locally.
|
|
frames_load_lego_with_local:
|
|
node perf-canvaskit-with-puppeteer.js --canvaskit_js ../../out/canvaskit_wasm/canvaskit.js \
|
|
--canvaskit_wasm ../../out/canvaskit_wasm/canvaskit.wasm --use_gpu \
|
|
--input_lottie ../../modules/canvaskit/perf/assets/lego_loader.json \
|
|
--bench_html skottie-frames.html
|
|
|
|
test_path_transform_without_snap:
|
|
node perf-canvaskit-with-puppeteer.js --canvaskit_js --canvaskit_js ../../out/canvaskit_wasm/canvaskit.js \
|
|
--canvaskit_wasm ../../out/canvaskit_wasm/canvaskit.wasm --use_gpu \
|
|
--assets path_translate_assets \
|
|
--bench_html path-transform.html \
|
|
--query_params translate opacity
|
|
|
|
test_path_transform_with_snap:
|
|
node perf-canvaskit-with-puppeteer.js --canvaskit_js --canvaskit_js ../../out/canvaskit_wasm/canvaskit.js \
|
|
--canvaskit_wasm ../../out/canvaskit_wasm/canvaskit.wasm --use_gpu \
|
|
--assets path_translate_assets \
|
|
--bench_html path-transform.html \
|
|
--query_params translate opacity snap
|
|
|
|
skp_with_local:
|
|
node perf-canvaskit-with-puppeteer.js --canvaskit_js ../../out/canvaskit_wasm/canvaskit.js \
|
|
--canvaskit_wasm ../../out/canvaskit_wasm/canvaskit.wasm --use_gpu \
|
|
--input_skp ${HOME}/skps/desk_nytimes.skp \
|
|
--bench_html render-skp.html
|