mirror of
https://github.com/ceres-solver/ceres-solver.git
synced 2026-08-29 16:40:38 +08:00
Force use of single-thread in Problem::Evaluate() without OpenMP.
- Ensure that, as in the preprocessor, we force num_threads to be 1 if Ceres was compiled without OpenMP to prevent a CHECK() failure in internal code. Change-Id: I49d7bdeff81e5bb24aaaa3945018d9d012cd9df9
This commit is contained in:
committed by
Sameer Agarwal
parent
8db90ca2f6
commit
ffa324765e
@@ -731,7 +731,15 @@ bool ProblemImpl::Evaluate(const Problem::EvaluateOptions& evaluate_options,
|
||||
// the Evaluator decides the storage for the Jacobian based on the
|
||||
// type of linear solver being used.
|
||||
evaluator_options.linear_solver_type = SPARSE_NORMAL_CHOLESKY;
|
||||
#ifndef CERES_USE_OPENMP
|
||||
LOG_IF(WARNING, evaluate_options.num_threads > 1)
|
||||
<< "OpenMP support is not compiled into this binary; "
|
||||
<< "only evaluate_options.num_threads = 1 is supported. Switching "
|
||||
<< "to single threaded mode.";
|
||||
evaluator_options.num_threads = 1;
|
||||
#else
|
||||
evaluator_options.num_threads = evaluate_options.num_threads;
|
||||
#endif // CERES_USE_OPENMP
|
||||
|
||||
string error;
|
||||
scoped_ptr<Evaluator> evaluator(
|
||||
|
||||
Reference in New Issue
Block a user