)]}'
{
  "commit": "93ba16fefcd44783f9ab15892c1c3b74a6aeb21a",
  "tree": "67cb7ad780fe47b1001af69d5802ce1e95704979",
  "parents": [
    "05fc04490fdd8e17b25c73ba5070c07246d64c2b"
  ],
  "author": {
    "name": "Sameer Agarwal",
    "email": "sameeragarwal@google.com",
    "time": "Wed Apr 11 21:12:34 2018 -0700"
  },
  "committer": {
    "name": "Sameer Agarwal",
    "email": "sameeragarwal@google.com",
    "time": "Wed Apr 11 21:15:02 2018 -0700"
  },
  "message": "Simplify IterativeRefiner\n\nChange the loop structure of IterativeRefiner to\nunconditionally refine for max_num_iterations.\n\nThis is done for two reasons.\n\n1. We expect to use this refinement for a small number of iterations\n   where the convergence test is useless.\n2. Eliminating the convergence test means we can restructure the loop\n   and save on a sparse matrix-vector multiply, saving precious\n   compute.\n\nChange-Id: I6347f453a5d19d234af2a2eb1bce811048963e06\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "b73c0b0c75a89c8289a223b95236b7c377361f3f",
      "old_mode": 33188,
      "old_path": "internal/ceres/iterative_refiner.cc",
      "new_id": "fb0e45bdcdd1a569c4f9b1e565e2bc77d66a43bf",
      "new_mode": 33188,
      "new_path": "internal/ceres/iterative_refiner.cc"
    },
    {
      "type": "modify",
      "old_id": "9021e819e1888200a14592185a24342449d6c58c",
      "old_mode": 33188,
      "old_path": "internal/ceres/iterative_refiner.h",
      "new_id": "f969935ae46a9327c885fff60b47586216e8dae6",
      "new_mode": 33188,
      "new_path": "internal/ceres/iterative_refiner.h"
    },
    {
      "type": "modify",
      "old_id": "0c9ef6964951c42f5abb9f7ac26490d0807c4860",
      "old_mode": 33188,
      "old_path": "internal/ceres/iterative_refiner_test.cc",
      "new_id": "ecd9a36f5a647547141f048ebe85c8a94926f12b",
      "new_mode": 33188,
      "new_path": "internal/ceres/iterative_refiner_test.cc"
    },
    {
      "type": "modify",
      "old_id": "1c79bc9994cc632298b4dc0c4ea334c10233fd54",
      "old_mode": 33188,
      "old_path": "internal/ceres/sparse_cholesky_test.cc",
      "new_id": "34098f3ce891f683acf18ee27613780498bfd53d",
      "new_mode": 33188,
      "new_path": "internal/ceres/sparse_cholesky_test.cc"
    }
  ]
}
