thank you for the hint. I added using ceres::CUDA
and have the following solver options:
options.dense_linear_algebra_library_type = CUDA;
options.linear_solver_type = ceres::DENSE_QR
options.minimizer_progress_to_stdout = true;
Solve(options, &problem, &summary);
I went through your test_files to find some additional hints, and I also tried searching github.
Is there some easy minimal example of ceres with CUDA that I missed?
This is the output of the summary:
Residual blocks 8000 8000
Residuals 8000 8000
Dense linear algebra library CUDA
Trust region strategy LEVENBERG_MARQUARDT
Linear solver DENSE_QR DENSE_QR
Threads 1 1
Linear solver ordering AUTOMATIC 2
Minimizer iterations 6
Successful steps 6
Unsuccessful steps 0
Time (in seconds):
Residual only evaluation 0.014601 (6)
Jacobian & residual evaluation 4.412829 (6)
Linear solver 0.017282 (6)
Termination: CONVERGENCE (Function tolerance reached. |cost_change|/cost: 1.087332e-09 <= 1.000000e-06)
This one was pretty fast, but my other models are more complicated and running them takes up to two days,.
I guess the problem is that the no of threads is 1? What to do about this?
Thank you for your help,