Sameer Agarwal
Sameer Agarwal
On nvidia GPUs like Quadro K2200, CGNR is slower on CPU. The reason it appears is the slow performance of A'x when A is a compressed row sparse. The slowdown...
The plan is to move entirely to a 64bit implementation. This primarily amounts to replacing the use of int with int64_t at most places and using the 64bit API for...
``` [41/420] Linking CXX executable bin/array_utils_test ld: warning: ignoring duplicate libraries: '-ldl', '-lm', 'lib/libceres.a', 'lib/libgtest.a' [44/420] Linking CXX executable bin/array_selector_test ld: warning: ignoring duplicate libraries: '-ldl', '-lm', 'lib/libceres.a', 'lib/libgtest.a' [45/420]...
Inner iterations is a well used feature but has no tests.
The division of labor between these files is an artifact of when we had multiple threading backends. Now it is just confusing. It should be simplified into a set of...
There is a design issue as to who should cache this partitioning, but one place where this could be done for sure is inside CgnrLinearOperator, since within its lifetime, the...
``` fn array_subnormals_to_zero_using_map( terms : apfloat::APFloat[N]) -> apfloat::APFloat[N] { map(terms, apfloat::subnormals_to_zero) } ``` fails with ``` 0019: terms : apfloat::APFloat[N]) 0020: -> apfloat::APFloat[N] { 0021: map(terms, apfloat::subnormals_to_zero) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ ParseError: Expected...
The ownership semantics of objects in the first order optimizer are simpler than they are for ceres::Problem so using std::unique_ptr in the API will make it less error prone.