| // Generates demo data to go along with the demo repo at |
| // https://github.com/skia-dev/perf-demo-repo. It emits 9 good files and one |
| // file with an unknown git commit. |
| package main |
| |
| import ( |
| "encoding/json" |
| "fmt" |
| "math/rand" |
| "os" |
| |
| "go.skia.org/infra/go/sklog" |
| "go.skia.org/infra/perf/go/ingest/format" |
| ) |
| |
| func main() { |
| // These git hashes come from the https://github.com/skia-dev/perf-demo-repo |
| // repo. |
| hashes := []string{ |
| "fcd63691360443c852ab3bd832d0a9be7596e2d5", |
| "a872080a357d0c8a4d5608c5dbb79c6132248c94", |
| "6286eccdf042751401f54696ad38de9f6849284d", |
| "04cfbf7e7ce2139ed3fd58a368e80f72a967d57e", |
| "bc8f0a0b48efd7e90522f78b603aa0cbb24a39b0", |
| "6d65a77667b810f159f689a1d6838f0c443322ff", |
| "38485885d3d3c5de086d4e67f68879e9456f551e", |
| "977e0ef44bec17659faf8c5d4025c5a068354817", |
| "6079a7810530025d9877916895dd14eb8bb454c0", |
| "ffffffffffffffffffffffffffffffffffffffff", // Unknown commit. |
| } |
| for i, hash := range hashes { |
| f := format.Format{ |
| Version: format.FileFormatVersion, |
| GitHash: hash, |
| Key: map[string]string{ |
| "arch": "x86", |
| "config": "8888", |
| }, |
| Results: []format.Result{ |
| { |
| Key: map[string]string{ |
| "test": "encode", |
| }, |
| Measurements: map[string][]format.SingleMeasurement{ |
| "ns": { |
| { |
| Value: "min", |
| Measurement: 10.1 + rand.Float32(), |
| }, |
| { |
| Value: "max", |
| Measurement: 12.2 + rand.Float32()*float32(i), |
| }, |
| }, |
| "alloc": { |
| { |
| Value: "kb", |
| Measurement: 120, |
| }, |
| { |
| Value: "num", |
| Measurement: float32(7 + i/5), |
| }, |
| }, |
| }, |
| }, |
| }, |
| } |
| b, err := json.MarshalIndent(f, "", " ") |
| if err != nil { |
| sklog.Fatal(err) |
| } |
| if err := os.WriteFile(fmt.Sprintf("./data/demo_data_commit_%d.json", i+1), b, 0644); err != nil { |
| sklog.Fatal(err) |
| } |
| } |
| } |