aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/sparse_product.cpp
Commit message (Collapse)AuthorAge
* Fix sparse_extra_3, disable counting temporaries for testing ↵Gravatar Antonio Sanchez2020-11-18
| | | | | | | | | | | | | | | | | | | | | | | DynamicSparseMatrix. Multiplication of column-major `DynamicSparseMatrix`es involves three temporaries: - two for transposing twice to sort the coefficients (`ConservativeSparseSparseProduct.h`, L160-161) - one for a final copy assignment (`SparseAssign.h`, L108) The latter is avoided in an optimization for `SparseMatrix`. Since `DynamicSparseMatrix` is deprecated in favor of `SparseMatrix`, it's not worth the effort to optimize further, so I simply disabled counting temporaries via a macro. Note that due to the inclusion of `sparse_product.cpp`, the `sparse_extra` tests actually re-run all the original `sparse_product` tests as well. We may want to simply drop the `DynamicSparseMatrix` tests altogether, which would eliminate the test duplication. Related to #2048
* Save one extra temporary when assigning a sparse product to a row-major ↵Gravatar Gael Guennebaud2020-05-30
| | | | sparse matrix
* Oopps, EIGEN_COMP_MSVC is not available before including Eigen.Gravatar Gael Guennebaud2018-07-20
|
* Disable optimization for sparse_product unit test with MSVC 2013, otherwise ↵Gravatar Gael Guennebaud2018-07-20
| | | | it takes several hours to build.
* Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with ↵Gravatar Gael Guennebaud2018-07-17
| | | | | | | | | EIGEN_DECLARE_TEST(mytest) { /* code */ }. This provide several advantages: - more flexibility in designing unit tests - unit tests can be glued to speed up compilation - unit tests are compiled with same predefined macros, which is a requirement for zapcc
* Fix mixing types in sparse matrix products.Gravatar Gael Guennebaud2017-09-02
|
* Fix dense * sparse-selfadjoint-view product.Gravatar Gael Guennebaud2017-04-25
|
* bug #1379: fix compilation in sparse*diagonal*dense with openmpGravatar Gael Guennebaud2017-01-21
|
* Add support for non trivial scalar factor in sparse selfadjoint * dense ↵Gravatar Gael Guennebaud2016-08-24
| | | | | | products, and enable +=/-= assignement for such products. This changeset also improves the performance by working on column of the result at once.
* Extend sparse*sparse product unit test to check that the expected ↵Gravatar Gael Guennebaud2016-05-18
| | | | implementation is used (conservative vs auto pruning).
* Enable and fix -Wdouble-conversion warningsGravatar Christoph Hertzberg2016-05-05
|
* Fix ambiguous instantiationGravatar Gael Guennebaud2015-10-27
|
* Add support to directly evaluate the product of two sparse matrices within a ↵Gravatar Gael Guennebaud2015-10-26
| | | | dense matrix.
* bug #650: fix sparse * dense wrt noalias and compound assignmentGravatar Gael Guennebaud2015-06-09
|
* bug #942: fix dangling references in evaluator of diagonal * sparse products.Gravatar Gael Guennebaud2015-04-18
|
* bug #875: remove broken SparseMatrixBase::nonZeros and introduce a ↵Gravatar Gael Guennebaud2015-04-01
| | | | | | nonZerosEstimate() method to sparse evaluators for internal uses. Factorize some code in SparseCompressedBase.
* Index refactoring: StorageIndex must be used for storage only (and locally ↵Gravatar Gael Guennebaud2015-02-13
| | | | when it make sense). In all other cases use the global Index type.
* bug #877, bug #572: Introduce a global Index typedef. Rename Sparse*::Index ↵Gravatar Christoph Hertzberg2014-12-04
| | | | to StorageIndex, make Dense*::StorageIndex an alias to DenseIndex. Overall this commit gets rid of all Index conversion warnings.
* Re-enable products with triangular views of sparse matrices: we simply have ↵Gravatar Gael Guennebaud2014-10-06
| | | | to treat them as a sparse matrix.
* Implement evaluator for sparse-selfadjoint productsGravatar Gael Guennebaud2014-07-22
|
* merge with default branchGravatar Gael Guennebaud2014-07-18
|\
| * bug #838: add unit test for fill-in in sparse outer product and fix abusive ↵Gravatar Gael Guennebaud2014-07-16
| | | | | | | | fill-in.
* | Extend dense*sparse product unit testsGravatar Gael Guennebaud2014-07-15
|/
* Fix bug #838: detect outer products from either the lhs or rhsGravatar Gael Guennebaud2014-07-11
|
* Fix bug #838: fix dense * sparse and sparse * dense outer productsGravatar Gael Guennebaud2014-07-11
|
* Fix sparse_product/sparse_extra unit testsGravatar Gael Guennebaud2014-02-17
|
* Fix a few Index to int buggy conversionsGravatar Gael Guennebaud2014-02-15
|
* Fix bug #611: diag * sparse * diagGravatar Gael Guennebaud2013-07-05
|
* Fiw bug #553: add support for sparse matrix time sparse self-adjoint view ↵Gravatar Desire NUENTSA2013-06-28
| | | | products
* Fix bug #611: fix const qualifier in cwiseProduct(sparse,dense) and ↵Gravatar Gael Guennebaud2013-06-28
| | | | SparseDiagonalProduct::InnerIterator
* fix sparse vector assignment from a sparse matrixGravatar Gael Guennebaud2013-03-06
|
* fix dense=sparse*diagonal (there was an issue in the values returned by the ↵Gravatar Gael Guennebaud2012-10-03
| | | | .outer() function of the related iterators)
* extend unit tests to check rectangular matrices for sparse*diagonal productsGravatar Gael Guennebaud2012-10-02
|
* Automatic relicensing to MPL2 using Keirs script. Manual fixup follows.Gravatar Benoit Jacob2012-07-13
|
* add aliasing test for sparse*sparse productGravatar Gael Guennebaud2011-12-20
|
* update sparse*sparse product: the default is now a conservative algorithm ↵Gravatar Gael Guennebaud2011-10-24
| | | | preserving symbolic non zeros. The previous with auto pruning of the small value is avaible doing: (A*B).pruned() or (A*B).pruned(ref) or (A*B).pruned(ref,eps)
* move DynamicSparseMatrix to SparseExtraGravatar Gael Guennebaud2011-10-24
|
* the min/max macros to detect unprotected min/max were undefined by some std ↵Gravatar Gael Guennebaud2011-08-19
| | | | | | header, so let's declare them after and do the respective fixes ;)
* extend sparse product unit testsGravatar Gael Guennebaud2011-03-22
|
* mergeGravatar Gael Guennebaud2010-12-31
|\
* | [Sparse] Added regression tests for the two bugfixes, the code passes all ↵Gravatar David J. Luitz2010-12-30
|/ | | | sparse_product tests
* bug #86 : use internal:: namespace instead of ei_ prefixGravatar Benoit Jacob2010-10-25
|
* add mixed sparse-dense outer productGravatar Gael Guennebaud2010-06-25
|
* Fix use of nesting types in SparseTranspose and split the big ↵Gravatar Gael Guennebaud2010-06-25
| | | | SparseProduct.h file
* Utilize Index in all unit tests.Gravatar Hauke Heibel2010-06-20
|
* remove the Triangular suffix to Upper, Lower, UnitLower, etc,Gravatar Gael Guennebaud2010-01-07
| | | | and remove the respective bit flags
* a couple of fixes after thye mergeGravatar Gael Guennebaud2009-12-23
|
* Big refactoring/cleaning in the spasre module withGravatar Gael Guennebaud2009-11-18
| | | | | | in particular the addition of a selfadjointView, and the extension of triangularView. The rest is cleaning and does not change/extend the API.
* more ET refactoring:Gravatar Gael Guennebaud2009-11-17
| | | | | * extend Cwise for multiple storage base class * a lot of cleaning in the Sparse module
* big huge changes, so i dont remember everything.Gravatar Benoit Jacob2009-10-28
| | | | | | | | | | * renaming, e.g. LU ---> FullPivLU * split tests framework: more robust, e.g. dont generate empty tests if a number is skipped * make all remaining tests use that splitting, as needed. * Fix 4x4 inversion (see stable branch) * Transform::inverse() and geo_transform test : adapt to new inverse() API, it was also trying to instantiate inverse() for 3x4 matrices. * CMakeLists: more robust regexp to parse the version number * misc fixes in unit tests