Chrome runs a battery of performance tests
against every build. These tests are monitored by the perf sheriffs
for regressions. The best ways to ensure your feature stays fast and gets faster is to add a performance test.
- Create the test
Most new perf tests will want to use the Telemetry framework. But, if you know what you are doing and have a good reason not to use Telemetry, a perf test may be any program or script which outputs results in the format the buildbot understands.
- Run the test on the perfbots
*This step is no longer needed for Android Telemetry benchmarks. It will be obsolete for desktop bots soon as well.*
Edit the buildbot configuration (master.cfg) so that perfbots on the chromium.perf waterfall run the test. You probably want to run it on as many platforms as possible. For an example, see r166255. After your change has landed, ping chrome-troopers at google.com for a restart of the chromium.perf master.
To check out the build repository, use following .gclient config:
"name" : "build",
"url" : "https://chromium.googlesource.com/chromium/tools/build.git",
"deps_file" : ".DEPS.git",
"managed" : True,
(Note: If you're not running on the perf bots, you can still send your results to the dashboard.)
- Announce it
When you add, remove, or change a test, you should always make everyone else aware as there are many people who depend on our tests and dashboards. At the very least, send an email to firstname.lastname@example.org with the details of your test.
- Document it
The dashboard displays descriptions pulled from unit-info.json, trace-info.json and test-info.json. Help out your fellow engineers and describe your test thoroughly.
- Monitor the results
Finally, monitor the results for regressions. Once the test is monitored, it will show up in the dashboard by default. To do so, use the red "Report Issue > Request Monitoring for Tests" menu on the perf dashboard.