The Skia Perf Format is a JSON file that looks like:
{ "gitHash": "fe4a4029a080bc955e9588d05a6cd9eb490845d4", "key": { "arch": "x86", "gpu": "GTX660", "model": "ShuttleA", "os": "Ubuntu12" }, "results": { "ChunkAlloc_PushPop_640_480": { "nonrendering": { "min_ms": 0.01485466666666667, "options": { "source_type": "bench" } } }, "DeferredSurfaceCopy_discardable_640_480": { "565": { "min_ms": 2.215988, "options": { "source_type": "bench" } }, ...
In the above example, the key-value pairs that identify the value 2.215988 are:
arch: x86, gpu: GTX660, model: ShuttleA, os: Ubuntu12 test: DeferredSurfaceCopy_discardable_640_480 config: 565 sub_result: min_ms source_type: bench
Key value pair charactes should come from [0-9a-zA-Z_], particularly note no spaces or ‘:’ characters.
Each Perf data file should be stored in Google Cloud Storage in a location of the following format:
gs://<bucket>/<one or more dir names>/YYYY/MM/DD/HH/<zero or more dir names><some unique name>.json
Where:
YYYY - Year MM - Month, e.g. 02 for February. DD - Day, e.g. 01, 02, etc. HH - Hour in 24 hour format, e.g. 00, 01, 02, ..., 22, 23
gs://skia-perf/nano-json-v1/2018/08/23/22/Android-Clang/7989dad6c3b2efc10defb8f280f7a8a1a731d5d0.json
The Perf ingester will attempt to ingest all files below /HH/ that end in .json
. Nothing about the file location or the file name is ingested as data.