)]}'
{
  "commit": "6975103d9f59ed9f3cfbc6d2201298f2c2fde046",
  "tree": "deb8f94601b66addab3ccddac009f9aa6f151667",
  "parents": [
    "be16dea4dfdd72cd6a4e198f8f8319b1f060b26d"
  ],
  "author": {
    "name": "David \u0027Digit\u0027 Turner",
    "email": "digit@google.com",
    "time": "Thu Dec 29 13:50:37 2022 +0100"
  },
  "committer": {
    "name": "GN LUCI",
    "email": "gn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Tue May 16 14:01:27 2023 +0000"
  },
  "message": "gn gen: Implement thread-local ResolvedTargetData cache.\n\nFinal benchmarks for \u0027gn gen\u0027 from the previous stack of CLs\nshows significant time reduction for moderate peak RAM increase:\n\n              TIME_BEFORE     TIME_AFTER    RAM_BEFORE  RAM_AFTER\n\n  Chromium:         4.75s          3.30s       1.00GiB    1.31GiB\n  Fuchsia:         20.99s         17.98s       3.84GiB    4.07GiB\n\nBenchmark Details ------------------------------------------\n\nChromium:\n\n  $ hyperfine \u0027/tmp/gn-main gen out/Default\u0027 \u0027/tmp/gn-new gen out/Default\u0027\n  Benchmark 1: /tmp/gn-main gen out/Default\n    Time (mean ± σ):      4.753 s ±  0.044 s    [User: 15.413 s, System: 8.977 s]\n    Range (min … max):    4.672 s …  4.820 s    10 runs\n\n  Benchmark 2: /tmp/gn-new gen out/Default\n    Time (mean ± σ):      3.303 s ±  0.061 s    [User: 18.202 s, System: 9.122 s]\n    Range (min … max):    3.217 s …  3.413 s    10 runs\n\n  Summary\n    \u0027/tmp/gn-new gen out/Default\u0027 ran\n      1.44 ± 0.03 times faster than \u0027/tmp/gn-main gen out/Default\u0027\n\n  $ /usr/bin/time -f%M /tmp/gn-main gen out/Default\n  Done. Made 17871 targets from 3048 files in 4674ms\n  1049960\n\n  $ /usr/bin/time -f%M /tmp/gn-new gen out/Default\n  Done. Made 17871 targets from 3048 files in 3229ms\n  1374344\n\nFuchsia:\n\n  $ hyperfine \u0027/tmp/gn-main gen out/default\u0027 \u0027/tmp/gn-new gen out/default\u0027\n  Benchmark 1: /tmp/gn-main gen out/default\n    Time (mean ± σ):     20.994 s ±  0.277 s    [User: 97.113 s, System: 49.242 s]\n    Range (min … max):   20.637 s … 21.602 s    10 runs\n\n  Benchmark 2: /tmp/gn-new gen out/default\n    Time (mean ± σ):     17.981 s ±  0.259 s    [User: 95.037 s, System: 48.343 s]\n    Range (min … max):   17.390 s … 18.324 s    10 runs\n\n  Summary\n    \u0027/tmp/gn-new gen out/default\u0027 ran\n      1.17 ± 0.02 times faster than \u0027/tmp/gn-main gen out/default\u0027\n\n  $ /usr/bin/time -f%M /tmp/gn-main gen out/default\n  Generating compile_commands took 727ms\n  Done. Made 196612 targets from 6247 files in 20741ms\n  4026004\n\n  $ /usr/bin/time -f%M /tmp/gn-new gen out/default\n  Generating compile_commands took 659ms\n  Done. Made 196612 targets from 6247 files in 17427ms\n  4272248\n\nBug: 331\nChange-Id: Ib2eca769a5a587a531f4fac2be263555e37b89ea\nReviewed-on: https://gn-review.googlesource.com/c/gn/+/15329\nCommit-Queue: David Turner \u003cdigit@google.com\u003e\nReviewed-by: Takuto Ikuta \u003ctikuta@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "6216269e50ccdbd409ad24ab09c01320f6db6b23",
      "old_mode": 33188,
      "old_path": "src/gn/command_gen.cc",
      "new_id": "ec4a766ce9ba1fa2fbadecb742b320633452f5f7",
      "new_mode": 33188,
      "new_path": "src/gn/command_gen.cc"
    }
  ]
}
