Document rationale for not reordering program when using Accelerate. Change-Id: Id11b3920cfdc706133ee497773a537287adc0a27
diff --git a/internal/ceres/reorder_program.cc b/internal/ceres/reorder_program.cc index 49e0449..5a3fbfd 100644 --- a/internal/ceres/reorder_program.cc +++ b/internal/ceres/reorder_program.cc
@@ -569,9 +569,12 @@ *tsm_block_jacobian_transpose, &ordering[0]); } else if (sparse_linear_algebra_library_type == ACCELERATE_SPARSE) { - // TODO(alex): Investigate what analysis on pre-ordered matrices - // Accelerate supports, but for now disable. - // https://github.com/ceres-solver/ceres-solver/issues/394. + // Accelerate does not provide a function to perform reordering without + // performing a full symbolic factorisation. As such, we have nothing + // to gain from trying to reorder the problem here, as it will happen + // in AppleAccelerateCholesky::Factorize() (once) and reordering here + // would involve performing two symbolic factorisations instead of one + // which would have a negative overall impact on performance. return true; } else if (sparse_linear_algebra_library_type == EIGEN_SPARSE) {