aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Core/products
Commit message (Collapse)AuthorAge
* fix vs.net compilation issueGravatar Hauke Heibel2009-08-06
|
* implement a ProductBase class and, as a proof of concept, update ↵Gravatar Gael Guennebaud2009-08-04
| | | | | | TriangularProduct and SelfAdjointMatrixProduct to take advantage of it => fewer LOC
* * Bye bye MultiplierBase, extend a bit AnyMatrixBase to allow =, +=, and -=Gravatar Gael Guennebaud2009-08-03
| | | | * This probably makes ReturnByValue needless
* faster trsm kernel and fix a couple of issuesGravatar Gael Guennebaud2009-07-31
|
* add explicit "on the right" triangular solving,Gravatar Gael Guennebaud2009-07-30
| | | | => no temporary when the rhs/unknows is row major
* fix typoGravatar Gael Guennebaud2009-07-29
|
* fix a couple of issues related to recent productsGravatar Gael Guennebaud2009-07-28
|
* add a debug mechanism to compute the number of intermediate evaluations ↵Gravatar Gael Guennebaud2009-07-28
| | | | (only for dynamic size)
* improve the expression analyzer to bypass Transpose expressionGravatar Gael Guennebaud2009-07-28
|
* compilation fixesGravatar Gael Guennebaud2009-07-27
|
* various compilation and bug fixes in selfadjoint stuffGravatar Gael Guennebaud2009-07-27
|
* cleaning and fix a perf issueGravatar Gael Guennebaud2009-07-27
|
* trmm is now fully working and available via TriangularView::operator*Gravatar Gael Guennebaud2009-07-27
|
* trmm is now working in all storage order configurationsGravatar Gael Guennebaud2009-07-27
|
* finalize trsm: works in all situations, and it is now used by solve() and ↵Gravatar Gael Guennebaud2009-07-26
| | | | solveInPlace()
* ok, now trsm works very well for upper triangular matricesGravatar Gael Guennebaud2009-07-26
| | | | | | TODO: link it with the meta triangular_solve_selector and handle the case where the rhs is row major by copying it to a col-major temporary + handle right solving: X = B * M^-1
* The new trsm is working very very well (read very fast) forGravatar Gael Guennebaud2009-07-25
| | | | | lower triangular matrix and row or col major lhs. TODO: handle upper triangular and row major rhs cases
* add WIP trsmGravatar Gael Guennebaud2009-07-24
|
* some cleaningGravatar Gael Guennebaud2009-07-24
|
* add a simplified version of the sybb kernel built on top of gebpGravatar Gael Guennebaud2009-07-24
|
* split and add unit tests for symm and syrk,Gravatar Gael Guennebaud2009-07-23
| | | | the .rank*update() functions now returns a reference to *this
* oops,, update SYRK so that the rhs can be non-square²Gravatar Gael Guennebaud2009-07-23
|
* Implement efficient sefladjoint product (aka SYRK) : C += alpha * U U^TGravatar Gael Guennebaud2009-07-23
| | | | | It is currently available via SelfAdjointView::rankKupdate. TODO: allows to write SelfAdjointView += u * u.adjoint()
* improve SYMV it is now faster and ready for useGravatar Gael Guennebaud2009-07-23
|
* bugfix in SYMMGravatar Gael Guennebaud2009-07-22
|
* implement high level API for SYMM and fix a couple of bugs related to complexGravatar Gael Guennebaud2009-07-22
|
* * GEMM enhencement: no need to pre-transpose the rhsGravatar Gael Guennebaud2009-07-22
| | | | | | | => faster a * b.transpose() product => this also fix a bug in a so far untested situation * SYMM is now ready for use => still have to write the high level stuff to convert natural expressions into a call to SYMM
* more refactoring in the level3 productsGravatar Gael Guennebaud2009-07-22
|
* * refactoring of the matrix product into multiple small kernelsGravatar Gael Guennebaud2009-07-21
| | | | | * started an efficient selfadjoint matrix * general matrix product based on the generic kernels ( => need a very little LOC)
* add triangular * vector productGravatar Gael Guennebaud2009-07-13
|
* Add an efficient rank2 update function (like the level2 blas xSYR2 routine).Gravatar Gael Guennebaud2009-07-11
| | | | Note that it is already used in Tridiagonalization.
* finally directly calling the low-level products is fasterGravatar Gael Guennebaud2009-07-10
|
* commit woking versions of triangular solvers naturallyGravatar Gael Guennebaud2009-07-09
| | | | | | handling conjuagted expression. still have to bench whether it is faster (runtime and compile time) to directly call the cache friendly functions, whence all the commented piece of code...
* started to simplify the triangular solversGravatar Gael Guennebaud2009-07-09
|
* ok now all the complex mat-mat and mat-vec products involving conjugate,Gravatar Gael Guennebaud2009-07-08
| | | | | adjoint, -, and scalar multiple seems to be well handled. It only remains the simpler case: C = alpha*(A*B) ... for the next commit
* conjugate expressions are now properly caught by ProductGravatar Gael Guennebaud2009-07-07
| | | | | => significant speedup in expr. like a.adjoint() * b, for complex scalar type (~ x3)
* * take advantage of new possibilies in LLT (mat -= product)Gravatar Gael Guennebaud2009-07-07
| | | | | * fix Block::operator+= product which was not optimized * fix some compilation issues
* * extended the cache friendly products to support C = alpha * A * M and C += ↵Gravatar Gael Guennebaud2009-07-07
| | | | | | | | | alpha * A * B * this allows to optimize xpr like C -= lazy_product, still have to catch "scalar_product_of_lazy_product" * started to support conjugate in cache friendly products (very useful to evaluate A * B.adjoint() without evaluating B.adjoint() into a temporary * compilation fix
* remove sentence "Eigen itself is part of the KDE project."Gravatar Benoit Jacob2009-05-22
| | | | it never made very precise sense. but now does it still make any?
* more MSVC fixes: restrict keywords (sorry for all these commits)Gravatar Gael Guennebaud2009-03-17
|
* more MSVC fixes (asm comments...)Gravatar Gael Guennebaud2009-03-17
|
* fix a few compilation errors and warnings (ICC)Gravatar Gael Guennebaud2009-03-11
|
* big addons:Gravatar Gael Guennebaud2009-03-05
| | | | | | | | | | | * add Homogeneous expression for vector and set of vectors (aka matrix) => the next step will be to overload operator* * add homogeneous normalization (again for vector and set of vectors) * add a Replicate expression (with uni-directional replication facilities) => for all of them I'll add examples once we agree on the API * fix gcc-4.4 warnings * rename reverse.cpp array_reverse.cpp
* performance improvement: rewrite of the matrix-matrix product followingGravatar Gael Guennebaud2009-03-02
| | | | Goto's paper => x1.4 speedup with more consistent perf results
* improve WIP new matrix productGravatar Gael Guennebaud2009-02-27
|
* * split CacheFriendlyProduct into multiple smaller filesGravatar Gael Guennebaud2009-02-21
* add an efficient selfadjoint * vector implementation (= blas symv) perf are inbetween MKL and GOTO => the interface is still missing (have to be rethougth)