Add support for cuDSS 0.8

cuDSS 0.8 replaced cudaDataType_t with its own cudssDataType_t enum in
the matrix creation APIs, and cudssMatrixCreateCsr() gained a separate
parameter for the type of the row offsets. Select the appropriate enum
type and pass the additional argument based on CUDSS_VERSION, so that
the code compiles against both cuDSS 0.7 and 0.8. Also report the new
CUDSS_STATUS_IR_FAILED status added in 0.8.

Fixes https://github.com/ceres-solver/ceres-solver/issues/1203
Refs SW-8464

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Change-Id: Ibf36261bd814f0f50e08caa5cf9391810a51540f
1 file changed
tree: 33e0d1908885fd3825ebaeb0b95496effa2bef87
  1. .github/
  2. bazel/
  3. cmake/
  4. config/
  5. data/
  6. docs/
  7. examples/
  8. include/
  9. internal/
  10. scripts/
  11. third_party/
  12. .clang-format
  13. .gitignore
  14. .gitmodules
  15. .readthedocs.yaml
  16. BUILD
  17. CITATION.cff
  18. CMakeLists.txt
  19. CONTRIBUTING.md
  20. LICENSE
  21. MODULE.bazel
  22. package.xml
  23. README.md
  24. WORKSPACE
README.md

Android Linux macOS Windows

Ceres Solver

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.

  1. Non-linear Least Squares problems with bounds constraints.
  2. General unconstrained optimization problems.

Please see ceres-solver.org for more information.