| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
|
|
|
| |
inline function.
Implemented NEON and AltiVec versions, copied SSE version over from GeneralBlockPanelKernel.h.
Also in GCC case (or rather !_MSC_VER) it's implemented using __builtin_prefetch().
NEON managed to give a small but welcome boost, 0.88GFLOPS -> 0.91GFLOPS.
|
|
|
|
| |
(yes, it was only used in dense xprs anyway)
|
|
|
|
| |
* remove HasDirectAccess / NoDirectAccess constants
|
|
|
|
|
| |
* remove member XprBase typedefs, use ei_dense_xpr_base
* remove member _HasDirectAccess typedefs, use ei_has_direct_access
|
|\ |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| | |
adapt 3x3 and 4x4 (non-SSE) inverse paths
|
| |
| |
| |
| | |
improve porting-Eigen2-to-3 docs
|
| | |
|
| |
| |
| |
| |
| | |
* move the corners support stuff to a new Block.h there
* expand the unit test
|
|\ \ |
|
| |/
|/|
| |
| |
| |
| |
| |
| | |
* get rid of BlockReturnType: it was not needed, and code was not always using it consistently anyway
* add topRows(), leftCols(), bottomRows(), rightCols()
* add corners unit-test covering all of that
* adapt docs, expand "porting from eigen 2 to 3"
* adapt Eigen2Support
|
|/
|
|
|
|
| |
template type name than the actual declaration.
This fixes the recent issues we observed on MSVC systems.
|
|
|
|
|
|
|
|
|
|
|
| |
preallocates member data structures.
- Updated unit tests to check above constructor.
- In the compute() method of decompositions: Made temporary matrices/vectors class members to avoid heap allocations during compute() (when dynamic matrices are used, of course).
These changes can speed up decomposition computation time when a solver instance is used to solve multiple same-sized problems. An added benefit is that the compute() method can now be invoked in contexts were heap allocations are forbidden, such as in real-time control loops.
CAVEAT: Not all of the decompositions in the Eigenvalues module have a heap-allocation-free compute() method. A future patch may address this issue, but some required API changes need to be incorporated first.
|
|\ |
|
| | |
|
|/
|
|
|
| |
First, MSVC 2010 does not ship a 'fixed'/'adapted' STL.
Second, only under very rare cases we do not even need the aligned_allocator.
|
| |
|
|
|
|
| |
functions can't be fed strided vectors, only strided matrices.
|
| |
|
|
|
|
| |
This allows to support QNX.
|
|\ |
|
| |
| |
| |
| | |
and documentation improvements
|
| | |
|
|/ |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
nontrivial inner stride is OK.
|
|
|
|
| |
* temporarily disable tests that strangely fail, with a big FIXME
|
|\
| |
| |
| |
| |
| | |
* adapt Eigenvalues module to the new rule that the RowMajorBit must have the proper value for vectors
* Fix RowMajorBit in ei_traits<ProductBase>
* Fix vectorizability logic in CoeffBasedProduct
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
| | |
|
| | |
|
| | |
|
| |\ |
|
| | | |
|
| | | |
|