1cb93a386Sopenharmony_ci 2cb93a386Sopenharmony_ci--- 3cb93a386Sopenharmony_cititle: "Skia Perf" 4cb93a386Sopenharmony_cilinkTitle: "Skia Perf" 5cb93a386Sopenharmony_ci 6cb93a386Sopenharmony_ci--- 7cb93a386Sopenharmony_ci 8cb93a386Sopenharmony_ci 9cb93a386Sopenharmony_ci[Skia Perf](https://perf.skia.org) is a web application for analyzing and 10cb93a386Sopenharmony_civiewing performance metrics produced by Skia's testing infrastructure. 11cb93a386Sopenharmony_ci 12cb93a386Sopenharmony_ci<img src=../Perf.png style="margin-left:30px" align="left" width="800"/> <br clear="left"> 13cb93a386Sopenharmony_ci 14cb93a386Sopenharmony_ciSkia tests across a large number of platforms and configurations, and each 15cb93a386Sopenharmony_cicommit to Skia generates more than 400,000 individual values that are sent to 16cb93a386Sopenharmony_ciPerf, consisting mostly of performance benchmark results, but also including 17cb93a386Sopenharmony_cimemory and coverage data. 18cb93a386Sopenharmony_ci 19cb93a386Sopenharmony_ciPerf offers clustering, which is a tool to pick out trends and patterns in large sets of traces. 20cb93a386Sopenharmony_ci 21cb93a386Sopenharmony_ci<img src=../Cluster.png style="margin-left:30px" align="left" width="400"/> <br clear="left"> 22cb93a386Sopenharmony_ci 23cb93a386Sopenharmony_ciAnd can generate alerts when those trends spot a regression: 24cb93a386Sopenharmony_ci 25cb93a386Sopenharmony_ci<img src=../Regression.png style="margin-left:30px" align="left" width="800"/> <br clear="left"> 26cb93a386Sopenharmony_ci 27cb93a386Sopenharmony_ci 28cb93a386Sopenharmony_ci## Calculations 29cb93a386Sopenharmony_ci 30cb93a386Sopenharmony_ciSkia Perf has the ability to perform calculations over the test data 31cb93a386Sopenharmony_ciallowing you to build up interesting queries. 32cb93a386Sopenharmony_ci 33cb93a386Sopenharmony_ciThis query displays the ratio of playback time in ms to the number of ops for desk\_wowwiki.skp: 34cb93a386Sopenharmony_ci 35cb93a386Sopenharmony_ci ratio( 36cb93a386Sopenharmony_ci ave(fill(filter("name=desk_wowwiki.skp&sub_result=min_ms"))), 37cb93a386Sopenharmony_ci ave(fill(filter("name=desk_wowwiki.skp&sub_result=ops"))) 38cb93a386Sopenharmony_ci ) 39cb93a386Sopenharmony_ci 40cb93a386Sopenharmony_ciYou can also use the data to answer questions like how many tests were run per commit. 41cb93a386Sopenharmony_ci 42cb93a386Sopenharmony_ci count(filter("")) 43cb93a386Sopenharmony_ci 44cb93a386Sopenharmony_ciSee Skia Perf for the [full list of functions available](https://perf.skia.org/help/). 45cb93a386Sopenharmony_ci 46