)]}'
{
  "commit": "12aa2aff129aa80da24ce5ffcbd31d12c942d2b2",
  "tree": "832a20f86d085fa5706a5c043d36dd3f0a378595",
  "parents": [
    "a73778252492a4668a1015b3ae2b3f4f07c65b5b"
  ],
  "author": {
    "name": "Lokbondo Kung",
    "email": "lokokung@google.com",
    "time": "Thu Oct 22 16:23:19 2026 -0700"
  },
  "committer": {
    "name": "dawn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "dawn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Thu Oct 22 16:23:19 2026 -0700"
  },
  "message": "[metal] Audit and document device guards for Create* functions.\n\n- As a part of ML analysis for CPU bottlenecks, a detailed report\n  identified that lock contention in Metal accounted for ~6.6% of\n  CPU time. The major one is the one for CreateBindGroup which we\n  unfortunately need to conditionally gate for now since the\n  ArgumentBuffer implementation is WIP. Ideally, as we implement\n  that, it would be best if we could put in place the synchronizations\n  such that we don\u0027t need to regress to needing the lock.\n\nBug: 363031535\nChange-Id: I33045d01ae1013f8ab05a2174d40b1475b871734\nReviewed-on: https://dawn-review.googlesource.com/c/dawn/+/352915\nReviewed-by: Kai Ninomiya \u003ckainino@chromium.org\u003e\nCommit-Queue: Loko Kung \u003clokokung@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "f4213d15a27edbbb615bbfc5b703141be2c658ee",
      "old_mode": 33188,
      "old_path": "src/dawn/native/metal/DeviceMTL.h",
      "new_id": "e6765c42474e5ec23803cfda81420beb01a73b60",
      "new_mode": 33188,
      "new_path": "src/dawn/native/metal/DeviceMTL.h"
    },
    {
      "type": "modify",
      "old_id": "47bc2530f3b894acbb50da9ff96608dee814c10d",
      "old_mode": 33188,
      "old_path": "src/dawn/native/metal/DeviceMTL.mm",
      "new_id": "03850873f4f9311f9864617583ad040620596bcb",
      "new_mode": 33188,
      "new_path": "src/dawn/native/metal/DeviceMTL.mm"
    }
  ]
}
