)]}'
{
  "commit": "93a02a4a71827dd25f4489f78cd2f85194d45464",
  "tree": "d437658430e6680a97e31fee319f7afb7f9fa5eb",
  "parents": [
    "b4ea4173b0ef79ac62f38f441bb377377cec89bf"
  ],
  "author": {
    "name": "S Ashwin Balaji",
    "email": "sashwinbalaji@google.com",
    "time": "Tue Jun 02 19:15:05 2026 +0100"
  },
  "committer": {
    "name": "S Ashwin Balaji",
    "email": "sashwinbalaji@google.com",
    "time": "Tue Jun 02 19:18:22 2026 +0100"
  },
  "message": "perfetto: add TraceBuffer create/short-session benchmarks\n\nAdds two benchmarks to compare the per-session cost of the V1 and V2\ntrace buffers, for workloads that repeatedly start and stop tracing\n(e.g. busy-waiting jank tests):\n\n- BM_TraceBuffer_Create: the buffer Create()/destroy lifecycle in\n  isolation (allocation, Initialize(), teardown), across 1/16/64 MB.\n- BM_TraceBuffer_ShortSession: a whole brief session - create, write a\n  little, read it back, destroy.\n\nBoth run for V1 and V2. On a local release build, create/teardown is\n~9 us for both (identical within noise, and flat across buffer sizes,\nconfirming the lazy kDontCommit mmap), and a whole short session is\nwithin ~2%. So V2 carries no measurable startup penalty over V1.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "9fb370723f5abe50598cb75e156f0b06473ef59d",
      "old_mode": 33188,
      "old_path": "src/tracing/service/trace_buffer_benchmark.cc",
      "new_id": "1b2678effe3d2e155a5260a374d72ec817014368",
      "new_mode": 33188,
      "new_path": "src/tracing/service/trace_buffer_benchmark.cc"
    }
  ]
}
