)]}'
{
  "commit": "94c6e7d27b5d48d81ab54ed9cdcbc55c3c099311",
  "tree": "e1c25985f9007006048313721164cdac4e12a8f4",
  "parents": [
    "9e11cd16d09403b9270e621e839d5948b6a74b8d"
  ],
  "author": {
    "name": "Sameer Agarwal",
    "email": "sameeragarwal@google.com",
    "time": "Wed Oct 01 15:55:13 2014 -0700"
  },
  "committer": {
    "name": "Sameer Agarwal",
    "email": "sameeragarwal@google.com",
    "time": "Wed Oct 01 16:00:26 2014 -0700"
  },
  "message": "Improve multithreading when using inner iterations.\n\nInner iterations by default would use problems where the evaluator\nwas configured to use exactly one thread for doing the evaluation.\nThis is fine when there are multiple inner iteration problems\nbeing executed concurrently, but every now and then there are\nproblem decompositions where there is just one parameter block\nin the current independent set and it touches every single\nresidual block. In such cases it is essential that the evaluator\nbe configured to use multiple threads.\n\nWe now pay attention to the size of the independent set and\ndynamically configure the number of threads being used by the\nouter loop and the evaluator loop.\n\nThanks to William Rucklidge for reporting this issue and providing\na test problem to debug.\n\nChange-Id: Iaff9a4ab6d2658cf7b61ea213575d23aab604e3b\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "1d55458bb69da730900239c2999169f3acce862f",
      "old_mode": 33188,
      "old_path": "internal/ceres/coordinate_descent_minimizer.cc",
      "new_id": "535d6e142b4e8e0271db8ea240dbe884edddc66f",
      "new_mode": 33188,
      "new_path": "internal/ceres/coordinate_descent_minimizer.cc"
    }
  ]
}
