Gradient checker multithreading bugfix. This is a follow-up on c/7470. GradientCheckingCostFunction calls callback_->SetGradientErrorDetected() in its Evaluate method, which will run in multiple threads simultaneously when enabling this option in the solver. Thus, the string append operation inside that method has to be protected by a mutex. Change-Id: I314ef1df2be52595370d9af05851bf6da39bb45e
Ceres Solver is an open source C++ library for modeling and solving large, complicated optimization problems. It is a feature rich, mature and performant library which has been used in production at Google since 2010. Ceres Solver can solve two kinds of problems.
Please see ceres-solver.org for more information.
Ceres development happens on Gerrit, including both repository hosting and code reviews. The GitHub Repository is a continuously updated mirror which is primarily meant for issue tracking. Please see our Contributing to Ceres Guide for more details.
The upstream Gerrit repository is
https://ceres-solver.googlesource.com/ceres-solver