skia2/site/dev/testing/skiaperf.md
Andrew Monshizadeh 9d6681cc70 Changes to site documentation
Mostly just formatting fixes with a few grammatical changes.

Two real notable changes:
  - Removed references to SkGLCanvas from Tips & FAQ and replaced with
    references to `SkDevice` and `SkSurface`.
  - Deleted deprecated "Quick Start Guides" folder

Docs-Preview: https://skia.org/?cl=92361
Bug: skia:
Change-Id: Ief790b1c2bae8fe0e39aa8d66c79f80560d18c9e
Reviewed-on: https://skia-review.googlesource.com/92361
Reviewed-by: Heather Miller <hcm@google.com>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
2018-01-11 19:47:58 +00:00

1.5 KiB

Skia Perf

Skia Perf is a Polymer-based web application for analyzing and viewing performance metrics produced by Skia's testing infrastructure.


Skia tests across a large number of platforms and configurations, and each commit to Skia generates 240,000 individual values that are sent to Perf, consisting mostly of performance benchmark results, but also including memory and coverage data.

Perf includes tools for analyzing such a large corpus of data, the most powerful is k-means clustering. This tool groups large sets of performance metrics together based on how they change over time, and highlights sets of metrics that have performance regressions.


Calculations

Skia Perf has the ability to perform calculations over the test data allowing you to build up interesting queries.

This query displays the ratio of playback time in ms to the number of ops for desk_wowwiki.skp:

ratio(
  ave(fill(filter("name=desk_wowwiki.skp&sub_result=min_ms"))),
  ave(fill(filter("name=desk_wowwiki.skp&sub_result=ops")))
)

You can also use the data to answer questions like how many tests were run per commit.

count(filter(""))

See Skia Perf for the full list of functions available.