skia2/infra/bots/recipes
Kevin Lubick af79192aa3 Make CPU coverage bot a bit faster
Adding -O1 and reducing the shards to cut down on overhead
in post-production.  This seems to save us a few minutes
(e.g. ~26 -> ~23 minutes).

The optimized code has about 600 fewer reachable lines of code
(according to the Coverage measurement), which is acceptable
given our tests run on -O1 or better.

Experiments (in this review) show that O3 is faster than O1, 
but not significantly enough where we want to deviate from 
our normal Debug bots:
Control: 73 minutes
-O1: 59 minutes
-O2: 60 minutes
-O3: 50 minutes

Bug: skia:
NOTRY=true
Change-Id: I33344c1cd2408373004d010e36ce27d6aa03deb2
Reviewed-on: https://skia-review.googlesource.com/65503
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2017-11-02 13:15:51 +00:00
..
bundle_recipes.expected Use chrome-infra Git CIPD package 2017-06-06 12:45:11 +00:00
calmbench.expected Roll recipe dependencies (nontrivial). 2017-11-01 19:00:50 +00:00
check_generated_files.expected Roll recipe dependencies (nontrivial). 2017-11-01 19:00:50 +00:00
compile.expected Make CPU coverage bot a bit faster 2017-11-02 13:15:51 +00:00
ct_skps.expected Roll recipe dependencies (nontrivial). 2017-11-01 19:00:50 +00:00
housekeeper.expected Roll recipe dependencies (nontrivial). 2017-11-01 19:00:50 +00:00
infra.expected Roll recipe dependencies (nontrivial). 2017-11-01 19:00:50 +00:00
perf.expected Move most remaining ANGLE bots to Clang. 2017-10-24 18:01:21 +00:00
recreate_skps.expected Roll recipe dependencies (nontrivial). 2017-11-01 19:00:50 +00:00
skpbench.expected Add skpbench jobs for CCPR 2017-10-20 19:34:17 +00:00
test.expected Revert "Add testcase for gbr config running on GTX1070 bots to test.py" 2017-11-01 21:40:41 +00:00
update_meta_config.expected Roll recipe dependencies (nontrivial). 2017-11-01 19:00:50 +00:00
upload_calmbench_results.expected Roll recipe dependencies (nontrivial). 2017-11-01 19:00:50 +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
bundle_recipes.py Use chrome-infra Git CIPD package 2017-06-06 12:45:11 +00:00
calmbench.py Output calmbench json in nanobench format 2017-10-30 13:52:08 +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 Switch most Win Vulkan jobs to Clang. 2017-10-11 15:00:10 +00:00
ct_skps.py Add in test_filter to build configuration 2017-10-16 11:09:49 +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 Move most remaining ANGLE bots to Clang. 2017-10-24 18:01:21 +00:00
README.md Use new recipes.py test command 2017-04-18 13:57:56 +00:00
recreate_skps.py Make ct_skps and recreate_skps recipes shell to gsutil 2017-09-25 13:53:53 +00:00
skpbench.py Add skpbench jobs for CCPR 2017-10-20 19:34:17 +00:00
test.py Revert "Add testcase for gbr config running on GTX1070 bots to test.py" 2017-11-01 21:40:41 +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 Output calmbench json in nanobench format 2017-10-30 13:52:08 +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

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.