f1585aabeb
This scaling logic correctly accounts for some devices which have multiple CPUs. Previously, we were scaling the smaller of these CPUs, which likely had a negative impact on nanobench, given nanobench was single threaded and the CPUs weren't allowed to idle much (because we set the CPU). This CL sets those additional CPUs to powersave when we run nanobench and then correctly scales down the beefier CPU we want to run nanobench on. For DM, we just run it in ondemand mode, which will hopefully be "as fast as possible", but allow the CPU governor to scale down if overheating becomes a problem. Bug: skia:7378 notry=TRUE Change-Id: I45ca5d9fb32182233d1b2d094842c879f2b84da4 Reviewed-on: https://skia-review.googlesource.com/83240 Commit-Queue: Kevin Lubick <kjlubick@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org> |
||
---|---|---|
.. | ||
bookmaker.expected | ||
bundle_recipes.expected | ||
calmbench.expected | ||
check_generated_files.expected | ||
compile.expected | ||
ct_skps.expected | ||
housekeeper.expected | ||
infra.expected | ||
perf.expected | ||
recreate_skps.expected | ||
skpbench.expected | ||
test.expected | ||
update_meta_config.expected | ||
upload_calmbench_results.expected | ||
upload_coverage_results.expected | ||
upload_dm_results.expected | ||
upload_nano_results.expected | ||
bookmaker.py | ||
bundle_recipes.py | ||
calmbench.py | ||
check_generated_files.py | ||
compile.py | ||
ct_skps.py | ||
housekeeper.py | ||
infra.py | ||
perf.py | ||
README.md | ||
recreate_skps.py | ||
skpbench.py | ||
test.py | ||
update_meta_config.py | ||
upload_calmbench_results.py | ||
upload_coverage_results.py | ||
upload_dm_results.py | ||
upload_nano_results.py |
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.