)]}'
{
  "commit": "d823fd85da3fb83146f734377da454473b93a2b2",
  "tree": "eb5d6b9c5a173233b86baf6130b73d77b064e7d9",
  "parents": [
    "f07499aebcf5b1b8f09f27f705e1b6e463ecdba1"
  ],
  "author": {
    "name": "Bruce Dawson",
    "email": "brucedawson@google.com",
    "time": "Tue Apr 09 14:40:18 2024 -0700"
  },
  "committer": {
    "name": "GN LUCI",
    "email": "gn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Wed Apr 10 04:55:37 2024 +0000"
  },
  "message": "Revert \"Teach gn to handle systems with \u003e 64 processors\"\n\nThis reverts commit d9bbb45cbf7b2e54328b45e4573a107849d2db25.\n\nReason for revert: In the context of gn running on Chromium on modern\n72+ core machines this CL causes a net slowdown. It causes gn to use\n\"too many\" threads, leading to excessive lock contention, perhaps\nexacerbated by using multiple NUMA nodes.\n\nThe original change measured only a tiny speedup so the potential\ngains from reverting are much greater than the potential losses.\n\nThe original revert is here:\n\nhttps://gn-review.git.corp.google.com/c/gn/+/17000\n\nHowever when I resolved merge conflicts it got redirected from 17000\nto 17020 and I\u0027d like to land the version that has the merge conflicts\nfixed.\n\nOriginal change\u0027s description:\n\u003e Teach gn to handle systems with \u003e 64 processors\n\u003e\n\u003e Previously, when run on Windows systems with \u003e 64 logical processors,\n\u003e gn\u0027s calculation of the number of available processors (used to\n\u003e determine how many worker threads to create) under-counted the number of\n\u003e processors, thereby not making full use of the system\u0027s available\n\u003e processing power.\n\u003e\n\u003e This change corrects gn\u0027s count of available CPUs so that it can use all\n\u003e of the system\u0027s processors. In addition to creating the correct number\n\u003e of workers, this change also distributes created workers between\n\u003e processor groups, a necessary step when utilizing more than 64\n\u003e processors on Windows.\n\u003e\n\u003e On the 72-logical-processor P920, this change makes gn gen use all 36\n\u003e cores, rather than only 18.\n\u003e\n\u003e Bug: crbug.com/982982\n\u003e Change-Id: I40b40f4d34b634566991e4bebf686f48836445e8\n\u003e Reviewed-on: https://gn-review.googlesource.com/c/gn/+/5660\n\u003e Commit-Queue: Scott Graham \u003cscottmg@chromium.org\u003e\n\u003e Reviewed-by: Scott Graham \u003cscottmg@chromium.org\u003e\n\n# Not skipping CQ checks because original CL landed \u003e 1 day ago.\n\nBug: crbug.com/982982\nChange-Id: I1ede6a0ec1eaa70b06061f2534232d2c5f0e47cb\nReviewed-on: https://gn-review.googlesource.com/c/gn/+/17020\nReviewed-by: Takuto Ikuta \u003ctikuta@google.com\u003e\nCommit-Queue: Takuto Ikuta \u003ctikuta@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "4cf71dbccf2a310abf85347d45b0f5d6e575c333",
      "old_mode": 33188,
      "old_path": "src/util/sys_info.cc",
      "new_id": "20bbdf72d18eea4cf0af3ca55d5a7826e4f288bb",
      "new_mode": 33188,
      "new_path": "src/util/sys_info.cc"
    },
    {
      "type": "modify",
      "old_id": "f594699ddd0002130fc381232ebf7da6435a7c3e",
      "old_mode": 33188,
      "old_path": "src/util/worker_pool.cc",
      "new_id": "c1105d68e778772f58cc25bc5fa514fcbd9e3b8e",
      "new_mode": 33188,
      "new_path": "src/util/worker_pool.cc"
    }
  ]
}
