1 Skia Perf 2 ========= 3 4 [Skia Perf](https://perf.skia.org) is a web based interface for exploring 5 performance data produced by `nanobench` and the code size bot. The data 6 includes: 7 8 * The nanobench test times in ms. 9 * Total memory consumed during a nanobench run. 10 * Code size for various symbol types in bytes. 11 12 All of the data can be plotted and also can be [analyzed using k-means 13 clustering](https://perf.skia.org/clusters/). 14 15 Calculations 16 ------------ 17 18 Skia Perf has the ability to perform calculations over the test data 19 allowing you to build up interesting queries. 20 21 For example, this query displays the [total code size of the library over time](https://perf.skia.org/#1877): 22 23 sum(fill(filter("config=memory&sub_result=bytes"))) 24 25 This query displays [the ratio of playback time in ms to the number of ops for desk\_wowwiki.skp](https://perf.skia.org/#1876): 26 27 ratio( 28 ave(fill(filter("name=desk_wowwiki.skp&sub_result=min_ms"))), 29 ave(fill(filter("name=desk_wowwiki.skp&sub_result=ops"))) 30 ) 31 32 You can also use the data to answer questions like [how many tests were run per commit](https://perf.skia.org/#1878). 33 34 count(filter("")) 35 36 See Skia Perf for the [full list of functions available](https://perf.skia.org/help). 37 38 Embedding 39 --------- 40 41 Once you create a shortcut, which may or may not include calculations, you 42 will be presented with the code to embed that graph as an iframe. For example, 43 here is an embedding code for showing the ratio of all 565 tests over all 8888 44 tests: 45 46 <iframe src='https://perf.skia.org/frame/#4518' width=500 height=300 frameborder=0></iframe> 47 48 And the embedded graph appears as: 49 50 <iframe src='https://perf.skia.org/frame/#4518' width=500 height=300 frameborder=0></iframe> 51 52