commit | 7d2e4152ec3da4a7f866f6030e1a2ae6a9bb5a04 | [log] [tgz] |
---|---|---|
author | Joydeep Biswas <joydeepb@cs.utexas.edu> | Sat Feb 12 12:09:26 2022 -0600 |
committer | Joydeep Biswas <joydeepb@cs.utexas.edu> | Mon Feb 14 15:22:39 2022 -0600 |
tree | a242128f10529a8d64e500fb98eea450873a9bb1 | |
parent | f90833f5fac832b39ccb22a20567a9ad035cb71a [diff] |
Add support for dense CUDA solvers #2 1. Add CUDADenseQR & tests. CUDADenseQR uses the cuSolverDN LAPACK implementation of QR factorization. A key limitation, however, is that this solver does not perform singularity checking -- this is because cuSolverDN does not have a trtrs implementation; we instead use cuBLAS' trsv for backsubstitution. 2. All CPU -> GPU memory transfers are now async, and both CUDADenseQR and CUDADenseCholesky explicitly manage their own streams for async operations. 3. Simplified CUDADenseCholesky to only use the legacy 32-bit cuSolverDN API. Change-Id: I2a9b7b65469658ddfe33b5b2a3892c8744d6e437
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.
Please see ceres-solver.org for more information.