skia2/infra/bots/recipes
Kevin Lubick e3b013047d Experiment with turning CPUs off during perf
Perf was nice and flat after https://skia-review.googlesource.com/c/skia/+/83240
but there was a 4-5x slowdown on the benchmarks themselves,
indicating that perhaps we were running nanobench on the
LITTLE cores (now on powersave) instead of the big cores we
thought (which were recently scaled down).

This experiment will show us FOR CERTAIN that we are
running on core 0 or 1 which is at .6 max frequency.

We expect to see a speedup from the previous results.

This is leading to turning of CPUs we don't need
to make sure nanobench is running on the ones we expect.

Bug: skia:
NOTRY=true
Change-Id: Ida65181e4d90e778e65e3f22d761288b9ade64f6
Reviewed-on: https://skia-review.googlesource.com/84201
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2017-12-13 11:38:22 +00:00
..
bookmaker.expected Use new bookmaker flag to status.json 2017-12-12 15:36:29 +00:00
bundle_recipes.expected Revert "[infra] Move commands from isolates to gen_tasks.go" 2017-12-07 14:54:11 +00:00
calmbench.expected Roll recipe dependencies (nontrivial). 2017-12-08 14:12:30 +00:00
check_generated_files.expected Roll recipe dependencies (nontrivial). 2017-12-08 14:12:30 +00:00
compile.expected Store skiaserve binary in GS from Release Android compile bots 2017-12-12 22:37:05 +00:00
ct_skps.expected Store skiaserve binary in GS from Release Android compile bots 2017-12-12 22:37:05 +00:00
housekeeper.expected Roll recipe dependencies (nontrivial). 2017-12-08 14:12:30 +00:00
infra.expected Roll recipe dependencies (nontrivial). 2017-12-08 14:12:30 +00:00
perf.expected Experiment with turning CPUs off during perf 2017-12-13 11:38:22 +00:00
recreate_skps.expected Roll recipe dependencies (nontrivial). 2017-12-08 14:12:30 +00:00
skpbench.expected Remove instanced rendering 2017-12-08 13:41:10 +00:00
test.expected Fix scaling logic for NexusPlayer and AndroidOne 2017-12-12 13:31:49 +00:00
update_meta_config.expected Roll recipe dependencies (nontrivial). 2017-12-08 14:12:30 +00:00
upload_calmbench_results.expected Roll recipe dependencies (nontrivial). 2017-12-08 14:12:30 +00:00
upload_coverage_results.expected Shard GCE Coverage bot to decrease latency 2017-10-17 21:10:17 +00:00
upload_dm_results.expected [recipes] Update example builder names. 2017-09-26 20:26:56 +00:00
upload_nano_results.expected Add in test_filter to build configuration 2017-10-16 11:09:49 +00:00
upload_skiaserve.expected [Infra] Fix revision in upload_skiaserve 2017-12-13 02:40:10 +00:00
bookmaker.py Use new bookmaker flag to status.json 2017-12-12 15:36:29 +00:00
bundle_recipes.py Revert "[infra] Move commands from isolates to gen_tasks.go" 2017-12-07 14:54:11 +00:00
calmbench.py Add a GPU calmbench bot 2017-11-02 19:04:21 +00:00
check_generated_files.py Add a bot to verify that generated SKSL files have not been hand-edited 2017-07-28 12:20:47 +00:00
compile.py remove mips support and bots 2017-12-05 17:19:45 +00:00
ct_skps.py Switch CT_BENCH_10k_SKPs bot to use QuadroP400 2017-11-08 21:43:37 +00:00
housekeeper.py [skia] convert recipes and module to new context module 2017-05-15 13:46:22 +00:00
infra.py Fixes for internal repo infra tests 2017-06-15 13:10:59 +00:00
perf.py Experiment with turning CPUs off during perf 2017-12-13 11:38:22 +00:00
README.md Use new recipes.py test command 2017-04-18 13:57:56 +00:00
recreate_skps.py Add new Bookmaker bot that runs nightly 2017-12-08 22:26:38 +00:00
skpbench.py Remove instanced rendering 2017-12-08 13:41:10 +00:00
test.py Re-add '--gpuThreads 0' tests. 2017-12-11 19:50:58 +00:00
update_meta_config.py [recipes] Switch to file module from recipe_engine 2017-06-16 17:41:28 +00:00
upload_calmbench_results.py Add a GPU calmbench bot 2017-11-02 19:04:21 +00:00
upload_coverage_results.py Shard GCE Coverage bot to decrease latency 2017-10-17 21:10:17 +00:00
upload_dm_results.py Add Linux CPU Coverage Bot 2017-10-09 19:58:34 +00:00
upload_nano_results.py Add in test_filter to build configuration 2017-10-16 11:09:49 +00:00
upload_skiaserve.py [Infra] Fix revision in upload_skiaserve 2017-12-13 02:40:10 +00:00

Skia Recipes

These are the top-level scripts which run inside of Swarming tasks to perform all of Skia's automated testing.

To run a recipe locally:

$ python infra/bots/recipes.py run --workdir=/tmp/<workdir> <recipe name without .py> key1=value1 key2=value2 ...

Each recipe may have its own required properties which must be entered as key/value pairs in the command.

When you change a recipe, you generally need to re-train the simulation test:

$ python infra/bots/recipes.py test run --train

Or:

    $ cd infra/bots; make train

The test generates expectations files for the tests contained within each recipe which illustrate which steps would run, given a particular set of inputs. Pay attention to the diffs in these files when making changes to ensure that your change has the intended effect.