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.