)]}'
{
  "commit": "4323e7015d8a7f74208962dd11f2d1065ae8aa15",
  "tree": "289db836ece464508b5740b8416227ffd8824895",
  "parents": [
    "c808630cea75d153382df3b29e0ddbc2798e1b4a"
  ],
  "author": {
    "name": "David \u0027Digit\u0027 Turner",
    "email": "digit@google.com",
    "time": "Thu Oct 15 23:40:55 2020 +0200"
  },
  "committer": {
    "name": "Commit Bot",
    "email": "commit-bot@chromium.org",
    "time": "Mon Oct 19 09:22:49 2020 +0000"
  },
  "message": "gn recipe: Link GN with rpmalloc to speed it up.\n\nThis CL changes the GN recipe to link the executable with the\nrpmalloc allocator from https://github.com/mjansson/rpmalloc\n\nThis speeds up the \u0027gn gen\u0027 operation of both Chromium and Fuchsia\noperations by 28% and 12% respectively [1], and has slightly better\nperformance than using tcmalloc from gperftools in the Fuchsia case.\n\nNote that:\n\n- The sources are grabbed directly from github.com, but it might be\n  desirable to use a Chromium or Fuchsia supported mirror instead.\n\n- Only Linux has been tested so far, so only this platform enables\n  this build mode.\n\n[1] Median measurements from 10 runs of \u0027gn gen\u0027 using the default\n    Linux allocator (glibc), gperftools\u0027 tcmalloc, and rpmalloc:\n\n  Fuchsia:\n      glibc (default):  9917 ms\n      gperftools:       7858 ms  (26% faster)\n      rpmalloc:         7752 ms  (28% faster)\n\n  Chromium:\n      glibc (default):  4742 ms\n      gperftools:       4186 ms  (13% faster)\n      rpmalloc:         4235 ms  (12% faster)\n\nChange-Id: Ia52134ef602f546d6e8b33bef0146c620d214b58\nReviewed-on: https://gn-review.googlesource.com/c/gn/+/9920\nCommit-Queue: David Turner \u003cdigit@google.com\u003e\nReviewed-by: Scott Graham \u003cscottmg@chromium.org\u003e\nReviewed-by: Petr Hosek \u003cphosek@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "869f775186f9d92a6a9b430fd371051683c4b3c1",
      "old_mode": 33188,
      "old_path": "infra/README.recipes.md",
      "new_id": "e0459322d7497b5880efa3af6f5bc0ce42afe9c6",
      "new_mode": 33188,
      "new_path": "infra/README.recipes.md"
    },
    {
      "type": "modify",
      "old_id": "4a301f2330844b84986f86b4d176c09db4098cc0",
      "old_mode": 33188,
      "old_path": "infra/recipes/gn.expected/ci_linux.json",
      "new_id": "46d945b92bed04d226f75a1c6ee83452ed4e4c35",
      "new_mode": 33188,
      "new_path": "infra/recipes/gn.expected/ci_linux.json"
    },
    {
      "type": "modify",
      "old_id": "03d5da6eeae933c6c463de742108f932ca6ff5b6",
      "old_mode": 33188,
      "old_path": "infra/recipes/gn.expected/ci_mac.json",
      "new_id": "a2db672d5e01a8b3f3d4725d0ac15520e48ee5fc",
      "new_mode": 33188,
      "new_path": "infra/recipes/gn.expected/ci_mac.json"
    },
    {
      "type": "modify",
      "old_id": "d7127c27a567ca5e485f1b92ee62bbedf004fc9d",
      "old_mode": 33188,
      "old_path": "infra/recipes/gn.expected/cipd_exists.json",
      "new_id": "f76eb84cf781eedba567898c75d1bd4ef211eeda",
      "new_mode": 33188,
      "new_path": "infra/recipes/gn.expected/cipd_exists.json"
    },
    {
      "type": "modify",
      "old_id": "2e09f954fca8a94aba5e694bf22552b558e4bd6c",
      "old_mode": 33188,
      "old_path": "infra/recipes/gn.expected/cipd_register.json",
      "new_id": "94900d0e6dea8cda746c5608dfa451612a71cbce",
      "new_mode": 33188,
      "new_path": "infra/recipes/gn.expected/cipd_register.json"
    },
    {
      "type": "modify",
      "old_id": "75b64a4fefc3a5b31c27868ef3c00c8c3eace967",
      "old_mode": 33188,
      "old_path": "infra/recipes/gn.expected/cq_linux.json",
      "new_id": "82ae5dd16cb2839b7178c32dddc30f803b86d138",
      "new_mode": 33188,
      "new_path": "infra/recipes/gn.expected/cq_linux.json"
    },
    {
      "type": "modify",
      "old_id": "0244003893307024d8e094c59f9c181275452d70",
      "old_mode": 33188,
      "old_path": "infra/recipes/gn.expected/cq_mac.json",
      "new_id": "76ceca46fda2a3586a123e8543dbf86b3826fca2",
      "new_mode": 33188,
      "new_path": "infra/recipes/gn.expected/cq_mac.json"
    },
    {
      "type": "modify",
      "old_id": "164b245cbefd80a78a7dbd95edbf06887234f539",
      "old_mode": 33188,
      "old_path": "infra/recipes/gn.expected/cq_win.json",
      "new_id": "8e352def0e99dfd26c1ad7a114243a9a25143e19",
      "new_mode": 33188,
      "new_path": "infra/recipes/gn.expected/cq_win.json"
    },
    {
      "type": "modify",
      "old_id": "68e721c0db12c3b25da742b46be3415629f6c2d6",
      "old_mode": 33188,
      "old_path": "infra/recipes/gn.py",
      "new_id": "298e870824bb1526b4415be35b7932e85ec1a0c1",
      "new_mode": 33188,
      "new_path": "infra/recipes/gn.py"
    }
  ]
}
