)]}'
{
  "commit": "f36e23b2e279ce47c7cd0e2149048dd9b1b5af4e",
  "tree": "8a6dde69bec1e54f8d01b610f63f99f6bf960a95",
  "parents": [
    "8d66e0d091ffaf332a1ea75d6c37232ad9f3ec36"
  ],
  "author": {
    "name": "Jeff Brown",
    "email": "jeffbrown@google.com",
    "time": "Fri May 20 13:17:42 2016 -0700"
  },
  "committer": {
    "name": "Jeff Brown",
    "email": "jeffbrown@google.com",
    "time": "Fri May 20 13:17:42 2016 -0700"
  },
  "message": "Mozart: Improve tracing and backpressure.\n\nRefactored the GPU Output to clarify the separation of concerns\nbetween the output and rasterizer classes.  GpuOutput maintains\nthe queue of frames to draw and keeps track of how many frames\nare outstanding.  GpuRasterizer manages the GL context and issues\nthe actual drawing commands.\n\nSimplified the policy for dropping frames so it only happen in\none spot in the compositor.  The compositor maintains a queue\nof drawn frames awaiting finish.  When that queue\u0027s size exceeds\nthe maximum allowable pipeline depth (configurable using\nthe --pipeline-depth argument) a pending frame will be discarded.\n\nAdded more trace events to help understand the behavior of the\ncompositor.\n\nNormalized the nomenclature for different stages in composition.\nThey are now called...\n\n  - Present: accept and validate scene updates published by apps\n  - Snapshot: resolve scene dependencies and capture the state\n              of the scene graph for traversal\n  - Paint: record drawing commands for a frame (as an SkPicture)\n  - Submit: enqueue a frame to be rasterized\n  - Draw: rasterize the frame\n\nThere\u0027s still much to be improved here.\n\nBUG\u003d\nR\u003dmikejurka@google.com\n\nReview URL: https://codereview.chromium.org/1995873002 .\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "37a51e4a264736907239b7b4dc824e07670937d3",
      "old_mode": 33188,
      "old_path": "services/gfx/compositor/backend/gpu_output.cc",
      "new_id": "531f2ee45f5ae9ef777c0e90988984231d446d7c",
      "new_mode": 33188,
      "new_path": "services/gfx/compositor/backend/gpu_output.cc"
    },
    {
      "type": "modify",
      "old_id": "8b0aa8782e281cb14c56aa297c394852fb5a9fb8",
      "old_mode": 33188,
      "old_path": "services/gfx/compositor/backend/gpu_output.h",
      "new_id": "d7fe5f559cefef592824f44c0640c4f11c67efca",
      "new_mode": 33188,
      "new_path": "services/gfx/compositor/backend/gpu_output.h"
    },
    {
      "type": "modify",
      "old_id": "4625490a7f2f32916705af021074a5f0dfb9e698",
      "old_mode": 33188,
      "old_path": "services/gfx/compositor/backend/gpu_rasterizer.cc",
      "new_id": "85c555360abadc96568e78fb0265f365edcf91d8",
      "new_mode": 33188,
      "new_path": "services/gfx/compositor/backend/gpu_rasterizer.cc"
    },
    {
      "type": "modify",
      "old_id": "12d780c01f1f7770501c51a8fe127fd7f5666ad7",
      "old_mode": 33188,
      "old_path": "services/gfx/compositor/backend/gpu_rasterizer.h",
      "new_id": "303b86efd8ca90c137c2821c053d8c979f4b2dc1",
      "new_mode": 33188,
      "new_path": "services/gfx/compositor/backend/gpu_rasterizer.h"
    },
    {
      "type": "modify",
      "old_id": "8ad5b0f36e45dfd569a199045a8de32cfedc89d0",
      "old_mode": 33188,
      "old_path": "services/gfx/compositor/compositor_engine.cc",
      "new_id": "bc05f2a09f4e8ca3778c1db0768fd9313285cdb1",
      "new_mode": 33188,
      "new_path": "services/gfx/compositor/compositor_engine.cc"
    },
    {
      "type": "modify",
      "old_id": "05c3e8d16c6d95b20a99dd3f03acc722f5f82a74",
      "old_mode": 33188,
      "old_path": "services/gfx/compositor/compositor_engine.h",
      "new_id": "e4abaada1bf99e53ab35f7e69ea49e57e3283ff9",
      "new_mode": 33188,
      "new_path": "services/gfx/compositor/compositor_engine.h"
    },
    {
      "type": "modify",
      "old_id": "b25575cfc4edad8368cd8f53ef4bfbdd576ae977",
      "old_mode": 33188,
      "old_path": "services/gfx/compositor/graph/nodes.cc",
      "new_id": "1db819a6f574cdf794a01f0ab451f9297f25a8c0",
      "new_mode": 33188,
      "new_path": "services/gfx/compositor/graph/nodes.cc"
    },
    {
      "type": "modify",
      "old_id": "27fba4ce5dbb4343f8648d1fa59ca6260042f865",
      "old_mode": 33188,
      "old_path": "services/gfx/compositor/graph/nodes.h",
      "new_id": "74dd8e533235b8deff225571d1996490401ac47e",
      "new_mode": 33188,
      "new_path": "services/gfx/compositor/graph/nodes.h"
    },
    {
      "type": "modify",
      "old_id": "eba6cb923640890c179ed261eaf467416a09cb58",
      "old_mode": 33188,
      "old_path": "services/gfx/compositor/graph/scene_content.cc",
      "new_id": "69c4244d9b75b6cef7bfb8c6120516a62f76ebf4",
      "new_mode": 33188,
      "new_path": "services/gfx/compositor/graph/scene_content.cc"
    },
    {
      "type": "modify",
      "old_id": "c78f5edff33ada43049d37a03489141d6aebe410",
      "old_mode": 33188,
      "old_path": "services/gfx/compositor/graph/scene_content.h",
      "new_id": "28ac6092a2c4b88cec739d1449f32393aa19d95d",
      "new_mode": 33188,
      "new_path": "services/gfx/compositor/graph/scene_content.h"
    },
    {
      "type": "modify",
      "old_id": "30eab2dbca6c45b54b2e68f20b7d423b4a2eb6a2",
      "old_mode": 33188,
      "old_path": "services/gfx/compositor/graph/snapshot.cc",
      "new_id": "b8051bdc81e15abd5712fb8306f28c91aaab6348",
      "new_mode": 33188,
      "new_path": "services/gfx/compositor/graph/snapshot.cc"
    },
    {
      "type": "modify",
      "old_id": "7f3043d669fd60ecfb864f58b7b78f01e26ba288",
      "old_mode": 33188,
      "old_path": "services/gfx/compositor/graph/snapshot.h",
      "new_id": "8012fd20e97329a2877873edb8f2688c24b8f61e",
      "new_mode": 33188,
      "new_path": "services/gfx/compositor/graph/snapshot.h"
    },
    {
      "type": "modify",
      "old_id": "6fedceadb2419d5b816a7a1bf985a8ff81a3dd42",
      "old_mode": 33188,
      "old_path": "services/gfx/compositor/render/render_frame.cc",
      "new_id": "d39753b8ba4481f3c6e29540a1ea86f999a35313",
      "new_mode": 33188,
      "new_path": "services/gfx/compositor/render/render_frame.cc"
    },
    {
      "type": "modify",
      "old_id": "334e690aaee64c410b2e6969713078e3418ba24d",
      "old_mode": 33188,
      "old_path": "services/gfx/compositor/render/render_frame.h",
      "new_id": "f468fb949b131566c36f926a2536b427666d9753",
      "new_mode": 33188,
      "new_path": "services/gfx/compositor/render/render_frame.h"
    }
  ]
}
