)]}'
{
  "commit": "dfc856d1f660fe8b3f5715c198ab57006de2aa4e",
  "tree": "a4b29180f479bb29e3f6f05e6367776618378e1b",
  "parents": [
    "1349966b32a626d8f9c5b24310d1f576d2846584"
  ],
  "author": {
    "name": "Gregg Tavares",
    "email": "gman@chromium.org",
    "time": "Tue Feb 18 12:16:07 2025 -0800"
  },
  "committer": {
    "name": "Dawn LUCI CQ",
    "email": "dawn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Tue Feb 18 12:16:07 2025 -0800"
  },
  "message": "Add a trace option to the Metal Backend\n\nThis works by setting DAWN_TRACE_FILE_BASE\u003dfoo which results\nin a trace foo-yyyy-mm-dd-hh-mm-ss-count.gputrace being written.\nYou can also set DAWN_TRACE_DEVICE_FILTER to have traces only written\nwhen the device\u0027s label contains the filter string.\n\nThe trace runs from device creation until device destroy so\nno extra API needed.\n\nUltimately it would be nice to make this work on all backends\nwith the same environment variables but this was easy to put\nin and is useful for devs on Metal, especially in dawn.node\nwith compute only captures.\n\nTo use you need somethnng like\n\n```\nMETAL_CAPTURE_ENABLE\u003d1 DAWN_TRACE_FILE_BASE\u003dfoo prog-that-uses-dawn-metal\n```\n\nWhich will write out something like `foo-2025-02-12T12-05-07-c000.gputrace`\n\nBug: 396072565\nChange-Id: I67271f3fff8ac18f56e48a4960f9ef493f77bfcf\nReviewed-on: https://dawn-review.googlesource.com/c/dawn/+/226174\nReviewed-by: Corentin Wallez \u003ccwallez@chromium.org\u003e\nCommit-Queue: Gregg Tavares \u003cgman@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "48562560083ef374127c6233ab45bf0c15e07640",
      "old_mode": 33188,
      "old_path": "docs/dawn/debugging.md",
      "new_id": "49069e92a24119f6e7eeb842d2c85461f4bf3804",
      "new_mode": 33188,
      "new_path": "docs/dawn/debugging.md"
    },
    {
      "type": "modify",
      "old_id": "a9fdc825dcd134c9d58dd9df866a840d8a1add82",
      "old_mode": 33188,
      "old_path": "src/dawn/native/Device.cpp",
      "new_id": "362893791db30ea75b4b33649ef29c496e344d86",
      "new_mode": 33188,
      "new_path": "src/dawn/native/Device.cpp"
    },
    {
      "type": "modify",
      "old_id": "b4887ae6c3c20f6f83a4452bb930bec01249d703",
      "old_mode": 33188,
      "old_path": "src/dawn/native/Device.h",
      "new_id": "c6b15c4c7a1fac3036ea15fb5dbf3b3d19cb78ce",
      "new_mode": 33188,
      "new_path": "src/dawn/native/Device.h"
    },
    {
      "type": "modify",
      "old_id": "dba3090ea1dbf5aebe5bab9002d2779b82d83cfa",
      "old_mode": 33188,
      "old_path": "src/dawn/native/metal/DeviceMTL.h",
      "new_id": "3418ff33f5e1919a1ed51f7fde3e25167d789ae7",
      "new_mode": 33188,
      "new_path": "src/dawn/native/metal/DeviceMTL.h"
    },
    {
      "type": "modify",
      "old_id": "70b643b82dd380711abc82335f4a659e76ab3755",
      "old_mode": 33188,
      "old_path": "src/dawn/native/metal/DeviceMTL.mm",
      "new_id": "b6b5f9523b21039fefbf1d76a9f8515102910670",
      "new_mode": 33188,
      "new_path": "src/dawn/native/metal/DeviceMTL.mm"
    }
  ]
}
