aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Core/util/BlasUtil.h
Commit message (Collapse)AuthorAge
* now gemv supports stridesGravatar Gael Guennebaud2011-01-30
|
* third pass of const-correctness fixes (bug #54), hopefully the last one...Gravatar Benoit Jacob2011-01-07
|
* bug #54 - really fix const correctness except in SparseGravatar Benoit Jacob2010-12-22
|
* Initial fixes for bug #85.Gravatar Hauke Heibel2010-10-25
| | | | | | | Renamed meta_{true|false} to {true|false}_type, meta_if to conditional, is_same_type to is_same, un{ref|pointer|const} to remove_{reference|pointer|const} and makeconst to add_const. Changed boolean type 'ret' member to 'value'. Changed 'ret' members refering to types to 'type'. Adapted all code occurences.
* bug #86 : use internal:: namespace instead of ei_ prefixGravatar Benoit Jacob2010-10-25
|
* * fix SelfCwiseBinaryOp traits and handling of mixed typesGravatar Gael Guennebaud2010-07-19
| | | | * improve compilation error in case of type mismatch
* * fix a couple of remaining issues with previous commit,Gravatar Gael Guennebaud2010-07-19
| | | | * merge ei_product_blocking_traits into ei_gepb_traits
* wip: extend the gebp kernel to optimize complex and mixed productsGravatar Gael Guennebaud2010-07-19
|
* mixing types step 3:Gravatar Gael Guennebaud2010-07-11
| | | | | - improve support of colmajor by vector and matrix - matrix - now all configurations are well handled, but the perf are not always very good
* mixing types in product step 2:Gravatar Gael Guennebaud2010-07-11
| | | | | | | | * pload* and pset1 are now templated on the packet type * gemv routines are now embeded into a structure with a consistent API with respect to gemm * some configurations of vector * matrix and matrix * matrix works fine, some need more work...
* syncGravatar Gael Guennebaud2010-07-10
|\
| * * generalize rowmajor by vectorGravatar Gael Guennebaud2010-07-10
| | | | | | | | * fix weird compilation error when constructing a matrix with a row by matrix product
| * move ei_conj_if to a more appropriate fileGravatar Gael Guennebaud2010-07-09
| |
* | support for real * complex matrix product - step 1 (works for some special ↵Gravatar Gael Guennebaud2010-07-07
|/ | | | cases)
* add support for vectorized conjugated productsGravatar Gael Guennebaud2010-07-06
|
* * extend the Has* packet traits and makes all functor use itGravatar Gael Guennebaud2010-07-05
| | | | * extend the packing routines to support conjugation
* add intitial support for the vectorization of complex<float>Gravatar Gael Guennebaud2010-07-05
|
* email changeGravatar Gael Guennebaud2010-06-24
|
* * makes all product use the new API to set the blocking sizesGravatar Gael Guennebaud2010-06-22
| | | | * fix an issue preventing multithreading (now Dynamic = -1 ...)
* undo 314bfa13753f153d44ff76a1c8ce0206616b06d9Gravatar Benoit Jacob2010-06-11
| | | | , the right fix was made as part of the Dynamic -> -1 change, the bug was that in Map, the InnerStrideAtCompileTime could be 0, which doesn't make sense. The 0 value in Stride should not have been forwarded as-is.
* Add a proof concept API to configure the blocking parameters at runtime.Gravatar Gael Guennebaud2010-06-07
| | | | After validation of the final API I'll update the other products to use it.
* fix issue #128 : inner stride can also be 0 in which case it means 1...Gravatar Gael Guennebaud2010-06-01
|
* the Index types change.Gravatar Benoit Jacob2010-05-30
| | | | As discussed on the list (too long to explain here).
* * remove ei_block_direct_access_statusGravatar Benoit Jacob2010-04-23
| | | | * remove HasDirectAccess / NoDirectAccess constants
* fix grave bug introduced by me: the low-level matrix-vector product ↵Gravatar Benoit Jacob2010-04-20
| | | | functions can't be fed strided vectors, only strided matrices.
* fix ei_blas_traits directaccess check: in the case of vectors, having a ↵Gravatar Benoit Jacob2010-04-16
| | | | nontrivial inner stride is OK.
* * Refactoring of the class hierarchy: introduction of DenseDirectAccessBase, ↵Gravatar Benoit Jacob2010-04-16
| | | | | | | | | removal of extra _Base/_Options template parameters. * Introduction of strides-at-compile-time so for example the optimized code really knows when it needs to evaluate to a temporary * StorageKind / XprKind * Quaternion::setFromTwoVectors: use JacobiSVD instead of SVD * ComplexSchur: support the 1x1 case
* make the number of registers easier to configure per architecturesGravatar Gael Guennebaud2010-03-04
|
* detect and implement inplace permutationsGravatar Gael Guennebaud2010-02-25
|
* Renamed PlainMatrixType to PlainObject (Array != Matrix).Gravatar Hauke Heibel2010-02-20
| | | | Renamed ReturnByValue::ReturnMatrixType ReturnByValue::ReturnType (again, Array != Matrix).
* lot of cleaning:Gravatar Gael Guennebaud2010-01-22
| | | | | | - clean the *_PUBLIC_INTERFACE_* - update Diagonal, ReturnByValue, ForceAlignedAccess, UnaryView, etc. to support array - many other small stuff
* fix the xpr analyzer for TransposeGravatar Gael Guennebaud2009-12-23
|
* * fix aliasing checks when the lhs is also transposed. At the same time,Gravatar Gael Guennebaud2009-12-16
| | | | | | significantly simplify the code of these checks while extending them to catch much more expressions! * move the enabling/disabling of vectorized sin/cos to the architecture traits
* Even more NestByValue cleanup...Gravatar Hauke Heibel2009-12-01
|
* * make HessenbergDecomposition uses the Householder moduleGravatar Gael Guennebaud2009-08-17
| | | | * bugfix in ei_blas_traits for .conjugate().conjugate()
* more product refactoringGravatar Gael Guennebaud2009-08-06
|
* add explicit "on the right" triangular solving,Gravatar Gael Guennebaud2009-07-30
| | | | => no temporary when the rhs/unknows is row major
* improve the expression analyzer to bypass Transpose expressionGravatar Gael Guennebaud2009-07-28
|
* trmm is now working in all storage order configurationsGravatar Gael Guennebaud2009-07-27
|
* 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()
* 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