)]}'
{
  "commit": "90f2ae1ae145ad715cafdbd548b771fa456c27d9",
  "tree": "3e4c1d5d2ba67f14a7695955faf198d0b6a59a54",
  "parents": [
    "a1221dc9f4ff9592fe1003447a79a680f3ca8819"
  ],
  "author": {
    "name": "Ryan Harrison",
    "email": "rharrison@chromium.org",
    "time": "Thu Sep 03 16:28:00 2026 -0700"
  },
  "committer": {
    "name": "dawn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "dawn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Thu Sep 03 16:28:00 2026 -0700"
  },
  "message": "[fuzz] Handle statistical error in normalization of CPU times\n\nSince the normalization values are experimentally determined they have\npotential for error. Previous experience suggests to me that this error\nmight be significant, so adding support for quantifying and propagating\nit in the calculations.\n\nSpecifically multiple iterations of normalization microbenchmarking are\nnow run to produce a mean and error which is then propagated through to\nlater calculations.\n\nSince normalization is now considered an experimental value, it is no\nlonger used as a substitute for burn-in, so the overall experimental\nharness is reworked to be more readable/sequential. If there are any\nnormalization or experimental tasks to be run, then burn-in (if enabled)\nis run before hand, so that thermal throttling/etc is minimized.\n\nThe terminology around normalization has been, well normalized, since it\nwas confusingly referred to as perf score and benchmarking in different\nparts of the code.\n\nAlso re-shuffled members in structs and documentation to be better\ngrouped together, since the burn-in values and normalization ones were\ninterleaved in places.\n\nBug: 524444910\nChange-Id: Ic7b31173b2aaa5950f46fd789284ec38ab16f7b9\nReviewed-on: https://dawn-review.googlesource.com/c/dawn/+/339415\nReviewed-by: dan sinclair \u003cdsinclair@chromium.org\u003e\nCommit-Queue: Ryan Harrison \u003crharrison@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "14c6fbf8fdd50a13763d109aee9da2ee3fef03ca",
      "old_mode": 33188,
      "old_path": "docs/tint/fuzzing-experiments.md",
      "new_id": "98492f52ce99a761d670ee14c01e71ebb63ade8f",
      "new_mode": 33188,
      "new_path": "docs/tint/fuzzing-experiments.md"
    },
    {
      "type": "modify",
      "old_id": "bcfcfc32b678455397a92584edc0121ce929e0f9",
      "old_mode": 33188,
      "old_path": "tools/src/cmd/fuzz/analyze.go",
      "new_id": "071c0b3b55d373ed4270e4ecf5527ef7342001c1",
      "new_mode": 33188,
      "new_path": "tools/src/cmd/fuzz/analyze.go"
    },
    {
      "type": "modify",
      "old_id": "2b375e55898199074c8d9e038f75270f40d7c54f",
      "old_mode": 33188,
      "old_path": "tools/src/cmd/fuzz/analyze_test.go",
      "new_id": "e2d1c8ab702595dd5f7665b48ab35efc53de3140",
      "new_mode": 33188,
      "new_path": "tools/src/cmd/fuzz/analyze_test.go"
    },
    {
      "type": "modify",
      "old_id": "6344208d13b5e2e61b18e8e66f518c4bc363b60c",
      "old_mode": 33188,
      "old_path": "tools/src/cmd/fuzz/experiment.go",
      "new_id": "f8b49270cf1dcc0299422358cdf489881210f46d",
      "new_mode": 33188,
      "new_path": "tools/src/cmd/fuzz/experiment.go"
    },
    {
      "type": "modify",
      "old_id": "9ec8a3c9d2f8d9a26eeb8d4a7665a0e559948f40",
      "old_mode": 33188,
      "old_path": "tools/src/cmd/fuzz/experiment_test.go",
      "new_id": "79b9f82bce7e9610838247dc8c96d27745e8971a",
      "new_mode": 33188,
      "new_path": "tools/src/cmd/fuzz/experiment_test.go"
    }
  ]
}
