Add cuDSS as sparse Cholesky solver

cuDSS could be used as an alternative for SuiteSparse and EigenSparse
in case if CUDA capable GPU is available.

Change-Id: I7a567093ce91363478118153e181134ed5804573
This commit is contained in:
Mark Shachkov
2024-05-01 11:00:58 +02:00
parent e47a42c295
commit 6fb3dae4ee
43 changed files with 1982 additions and 44 deletions
+8
View File
@@ -36,6 +36,9 @@
#include "ceres/version.h"
#ifndef CERES_NO_CUDA
#include "cuda_runtime.h"
#ifndef CERES_NO_CUDSS
#include "cudss.h"
#endif // CERES_NO_CUDSS
#endif // CERES_NO_CUDA
namespace ceres::internal {
@@ -79,6 +82,11 @@ constexpr char kVersion[] =
#ifndef CERES_NO_CUDA
"-cuda-(" CERES_TO_STRING(CUDART_VERSION) ")"
#ifndef CERES_NO_CUDSS
"-cudss-(" CERES_SEMVER_VERSION(CUDSS_VERSION_MAJOR,
CUDSS_VERSION_MINOR,
CUDSS_VERSION_PATCH) ")"
#endif // CERES_NO_CUDSS
#endif
;
// clang-format on