File ceres-solver.changes of Package ceres-solver
-------------------------------------------------------------------
Wed Nov 20 17:11:00 UTC 2024 - Stefan Brüns <stefan.bruens@rwth-aachen.de>
- Add missing suitesparse-devel dependency in devel subpackage.
- Fix CeresConfig breaking callers CMAKE_MODULE_PATH, add
0001-Fix-CMAKE_MODULE_PATH-breakage-due-to-find_dependenc.patch
-------------------------------------------------------------------
Wed Nov 20 03:31:57 UTC 2024 - Stefan Brüns <stefan.bruens@rwth-aachen.de>
- Update to version 2.2.0.
* New Features:
+ Substantial improvement to threading performance across the
board (Dmitry Korchemkin)
+ Mixed precision solves + iterative refinement when using CUDA
or CPU based dense linear solvers, or EIGEN_SPARSE as the
sparse linear algebra library. (Sameer Agarwal &
Joydeep Biswas)
+ Cuda based CGNR and preconditioner support (Joydeep Biswas &
Sameer Agarwal)
+ Nested Dissection (NESDIS) is now supported as an ordering
method in addition to AMD. (Sameer Agarwal, Alex Stewart &
Sergiu Deitsch)
+ Power Bundle Adjustment is available as a linear solver
and as a preconditioner by the name of
SCHUR POWER SERIES EXPANSION (Mark Shachkov).
+ Generalized Euler Angle conversions (hs293go@)
* Backward Incompatible API Changes
+ LocalParameterization has been removed, use Manifold instead.
+ Ceres Solver now requires a C++17 compliant compiler.
+ Ceres Solver now requires CMake version 3.16 or later.
+ Ceres Solver now requires SuiteSparse version 4.5.6 or later.
+ OpenMP and NO_THREADING backends have been removed.
C++ threads is how all threading is done.
+ Support for CX_SPARSE as a sparse linear algebra backend has
been removed. Similar or better performance can be expected
from Eigen as the sparse linear algebra library.
* Many Bug Fixes & Minor Changes, for details, see
http://ceres-solver.org/version_history.html
-------------------------------------------------------------------
Sat Feb 4 11:16:58 UTC 2023 - Stefan Brüns <stefan.bruens@rwth-aachen.de>
- Update to version 2.1.0.
* New Features:
+ Support for CUDA based dense solvers - DENSE_QR,
DENSE_NORMAL_CHOLESKY & DENSE_SCHUR (Joydeep Biswas,
Sameer Agarwal)
+ Manifold is the new LocalParameterization. Version 2.1 is
the transition release where users can use both
LocalParameterization as well as Manifold objects as they
transition from the former to the latter.
LocalParameterization will be removed in version 2.2.
There should be no numerical change to the results as a
result of this change. (Sameer Agarwal, Johannes Beck,
Sergiu Deitsch)
+ A number of changes to Jet s (Sergiu Deitsch):
- Jet gained support for, copysign, fma (fused multiply-add),
midpoint (C++20 and above), lerp (C++20 and above),
3-argument hypot (C++17 and above), log10, log1p, exp1m,
norm (squared norm).
- Quiet floating-point comparison: isless, isgreater,
islessgreater, islessequal, isgreaterequal, isunordered,
signbit, fdim
- Categorization and comparison operations are applied
exclusively and consistently to the scalar part of a
Jet now: isnan, isinf, isnormal, isfinite, fpclassify
(new), fmin, fmax
- It is now possible to safely compare a Jet against a
scalar (or literal) without constructing a Jet first
(even if it’s nested)
This enables interaction with various arithmetic functions
that expect a scalar like instance, such as
boost::math::pow<-N> for reciprocal computation.
+ Add NumericDiffFirstOrderFunction (Sameer Agarwal)
* Backward Incompatible API Changes:
+ LocalParameterization is deprecated. It will be removed
in version 2.2. Use Manifold instead.
+ Classification functions like IsFinite are deprecated.
Use the C++11 functions (isfinite, isnan etc) going
forward. However to maintain consistent behaviour with
comparison operators, these functions only inspect the
scalar part of the Jet.
* Many Bug Fixes & Minor Changes, for details, see
http://ceres-solver.org/version_history.html
- Drop upstream fix-tbb-2021.1-detection.patch
- Use memory-constrains to avoid occasional OOM build failures
-------------------------------------------------------------------
Mon Feb 21 02:16:20 UTC 2022 - Stefan Brüns <stefan.bruens@rwth-aachen.de>
- Fix build with TBB >= 2021.1, add
fix-tbb-2021.1-detection.patch
- Correct License tags.
- Cleanup spec file, remove obsolete CMake options.
- Add _constraints to avoid occasional build failures.
-------------------------------------------------------------------
Sat Jan 16 18:24:07 UTC 2021 - andy great <andythe_great@pm.me>
- Update to version 2.0.0.
* C++ threading based multi-threading support.
* Problem::AddResidualBlock(), SizedFunction, AutoDiffCostFunction,
NumericDiffCostFunction support an arbitrary number of parameter
blocks using variadic templates
* Significantly faster AutoDiff
* Mixed precision solves when using SPARSE_NORMAL_CHOLESKY.
* LocalParameterization objects can have a zero sized tangent
size, which effectively makes the parameter block constant.
In particular, this allows for a SubsetParameterization that
holds all the coordinates of a parameter block constant.
* Visibility based preconditioning now works with Eigen and CXSparse.
* Added Problem::EvaluateResidualBlock() and
Problem::EvaluateResidualBlockAssumingParametersUnchanged().
* GradientChecker now uses RIDDERS method for more accurate
numerical derivatives.
* Covariance computation uses a faster SVD algorithm
* A new local parameterization for lines
* A new (SUBSET) preconditioner for problems with general sparsity.
* Faster Schur elimination using faster custom BLAS routines for
small matrices.
* Automatic differentiation for FirstOrderFunction in the form of
AutoDiffFirstOrderFunction.
* TinySolverAutoDiffFunction now supports dynamic number of
residuals just like AutoDiffCostFunction.
* Backward Incompatible API Changes
* EvaluationCallback has been moved from Solver::Options to
Problem::Options for a more correct API.
* Removed Android.mk based build.
* Solver::Options::num_linear_solver_threads is no more.
* Several other moinor fixes and changes
-------------------------------------------------------------------
Thu Sep 17 11:07:48 UTC 2020 - Dirk Stoecker <opensuse@dstoecker.de>
- libceres-devel requires glog-devel
- cleanup spec-file format
-------------------------------------------------------------------
Tue Jan 1 10:17:10 UTC 2019 - Jan Engelhardt <jengelh@inai.de>
- Rename %soname to %sover to better reflect its use.
- Trim filler wording from description.
-------------------------------------------------------------------
Fri Jun 29 22:10:34 UTC 2018 - herbert@graeber-clan.de
- Use a _service file for download and compression
- Update to version 1.14.0
* New EvaluationCallback API. (Keir Mierle)
* TBB based threading (Yury Prokazov & Mike Vitus)
* C++11 threads based threading (Mike Vitus)
* A ceres::Context object to cache and keep track of global state.
(Mike Vitus)
* TinySolver - A small dense solver meant for solving small problems
really fast. [EXPERIMENTAL] (Keir Mierle & Sameer Agarwal)
* Bazel Build. (Keir Mierle & Rodrigo Queiro)
* Several other moinor fixes and changes
- Update to version 1.13.0
* LineSearchMinimizer and GradientProblemSolver are up to 2x faster
due to fewer function evaluations. (Sameer Agarwal)
* SPARSE_NORMAL_CHOLESKY is significantly faster because Ceres now
computes the normal equations exploiting the static block sparsity
structure. (Cheng Wang & Sameer Agarwal)
* Add compound with scalar operators for Jets. (Alex Stewart)
* Enable support for AVX instructions for Jets. (Alex Stewart)
* Several other moinor fixes and changes
-------------------------------------------------------------------
Sat Mar 25 17:35:10 UTC 2017 - herbert@graeber-clan.de
- Initial package (Eigen-only)