| Commit message (Collapse) | Author | Age |
|
|
|
| |
work correctly even when the input coefficients aren't aligned.
|
| |
|
|
|
|
| |
better than no vectorization)
|
|\ |
|
| |
| |
| |
| | |
warnings. This also fix the issue of the previous changeset in a much nicer way.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
boolean)
Created a new EIGEN_ALIGN_BYTES define to encode how the data should be aligned
Fixed a few remaining alignment issues exposed when the Eigen code is compiled with avx enabled.
Created a new EIGEN_ALIGN_DEFAULT define, which is set to the minimum alignment value required for the chosen instruction set. Use this value instead of EIGEN_ALIGN32 to preserve the existing alignment on SSE/Altivec/Neon.
|
|/ |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
computation, only to assemble unaligned packets from aligned packet loads)
(transplanted from 221f54698c2f6690da8c0f44c1e31e55118dedab
)
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* * *
License disclaimer changed to BSD license for MKL_support.h
* * *
Pardiso support fixed, test added.
blas/lapack tests fixed: Scalar parameter was added in Cholesky, product_matrix_vector_triangular remaned to triangular_matrix_vector_product.
* * *
PARDISO test was added physically.
|
|
|
|
|
|
|
| |
default windows.h
(transplanted from 49b6e9143e1d74441924c0c313536e263e12a55c
)
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
| |
should return CoeffReturnType, not "Scalar", if the expression is potentially a Lvalue.
|
|\ |
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
- improve support of colmajor by vector and matrix - matrix
- now all configurations are well handled, but the perf are not always very good
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
* 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...
|
|/ |
|
|
|
|
| |
* fix weird compilation error when constructing a matrix with a row by matrix product
|
| |
|
| |
|
|
|
|
| |
* vectorize complex<double>
|
| |
|
| |
|
|
|
|
| |
As discussed on the list (too long to explain here).
|
|
|
|
|
|
|
| |
sizeof(Scalar), and that assumption breaks with double on linux x86-32.
* Rename ei_alignmentOffset to ei_first_aligned
* Rewrite its documentation and part of its body
* The variant taking a MatrixBase doesn't need a separate size argument.
|
|
|
|
| |
aligned on the scalar type size (e.g., for double on 32 bits system without -malign-double)
|
|
|
|
| |
Note that it is already used in Tridiagonalization.
|
|
|
|
|
|
| |
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...
|
| |
|
|
|
|
|
| |
adjoint, -, and scalar multiple seems to be well handled. It only remains
the simpler case: C = alpha*(A*B) ... for the next commit
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
it never made very precise sense. but now does it still make any?
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
* 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
|
|
* add an efficient selfadjoint * vector implementation (= blas symv)
perf are inbetween MKL and GOTO
=> the interface is still missing (have to be rethougth)
|