mirror of
https://github.com/ceres-solver/ceres-solver.git
synced 2026-08-30 00:50:37 +08:00
Fix docs of supported sparse backends for mixed_precision_solves option
- Also adds documentation of mixed precision solves to Sphinx docs. - Fix reference to Sphinx theme used (RTD not better). - Fix NOTE syntax in use_explicit_schur_complement Sphinx docs. Change-Id: I7bdac0f07eb737f49b05e3fcaa3eebd087355d2d
This commit is contained in:
committed by
Sameer Agarwal
parent
8cb441c49a
commit
c2fab6502e
@@ -1408,7 +1408,7 @@ elimination group [LiSaad]_.
|
||||
computed Schur complement. This can improve the performance of the
|
||||
``ITERATIVE_SCHUR`` solver significantly.
|
||||
|
||||
.. NOTE:
|
||||
.. NOTE::
|
||||
|
||||
This option can only be used with the ``SCHUR_JACOBI``
|
||||
preconditioner.
|
||||
@@ -1453,6 +1453,36 @@ elimination group [LiSaad]_.
|
||||
|
||||
This setting only affects the `SPARSE_NORMAL_CHOLESKY` solver.
|
||||
|
||||
.. member:: bool Solver::Options::use_mixed_precision_solves
|
||||
|
||||
Default: ``false``
|
||||
|
||||
.. NOTE::
|
||||
|
||||
This feature is EXPERIMENTAL and under development, use at your
|
||||
own risk!
|
||||
|
||||
If true, the Gauss-Newton matrix is computed in *double* precision, but
|
||||
its factorization is computed in **single** precision. This can result in
|
||||
significant time and memory savings at the cost of some accuracy in the
|
||||
Gauss-Newton step. Iterative refinement is used to recover some
|
||||
of this accuracy back.
|
||||
|
||||
If ``use_mixed_precision_solves`` is true, we recommend setting
|
||||
``max_num_refinement_iterations`` to 2-3.
|
||||
|
||||
This option is currently only available if
|
||||
``sparse_linear_algebra_library_type`` is ``EIGEN_SPARSE`` or
|
||||
``ACCELERATE_SPARSE``, and ``linear_solver_type`` is
|
||||
``SPARSE_NORMAL_CHOLESKY`` or ``SPARSE_SCHUR``.
|
||||
|
||||
.. member:: int Solver::Options::max_num_refinement_iterations
|
||||
|
||||
Default: ``0``
|
||||
|
||||
Number steps of the iterative refinement process to run when
|
||||
computing the Gauss-Newton step, see ``use_mixed_precision_solves``.
|
||||
|
||||
.. member:: int Solver::Options::min_linear_solver_iterations
|
||||
|
||||
Default: ``0``
|
||||
|
||||
Reference in New Issue
Block a user