aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Core/ProductEvaluators.h
Commit message (Collapse)AuthorAge
...
* bug #1009, part 1/2: make sure vector expressions expose LinearAccessBit flag.Gravatar Gael Guennebaud2015-11-27
|
* Simplify cost computations based on HugeCost being smaller that unrolling limitGravatar Gael Guennebaud2015-10-28
|
* Refactoring of the cost model:Gravatar Gael Guennebaud2015-10-28
| | | | | | | | | | | - Dynamic is now an invalid value - introduce a HugeCost constant to be used for runtime-cost values or arbitrarily huge cost - add sanity checks for cost values: must be >=0 and not too large This change provides several benefits: - it fixes shortcoming is some cost computation where the Dynamic case was not properly handled. - it simplifies cost computation logic, and should avoid future similar shortcomings. - it allows to distinguish between different level of dynamic/huge/infinite cost - it should enable further simplifications in the computation of costs (save compilation time)
* Fix ambiguous instantiation issues of product_evaluator.Gravatar Gael Guennebaud2015-10-14
|
* Implement temporary-free path for "D.nolias() ?= C + A*B". (I thought it was ↵Gravatar Gael Guennebaud2015-10-09
| | | | already implemented)
* Fix nesting sub-expression in outer-productsGravatar Gael Guennebaud2015-10-08
|
* Fix propagation of AssumeAliasing for expression as: "scalar * (A*B)"Gravatar Gael Guennebaud2015-10-08
|
* Clean a bit the implementation of inverse permutationsGravatar Gael Guennebaud2015-10-08
|
* Re-enable vectorization of LinSpaced, plus some cleaningGravatar Gael Guennebaud2015-10-08
|
* Help clang to inline some functions, thus fixing some regressionsGravatar Gael Guennebaud2015-10-07
|
* Remove debuging prod() and lazyprod() function, plus some cleaning in ↵Gravatar Gael Guennebaud2015-10-07
| | | | noalias assignment
* Fix bug #1067: naming conflictGravatar Gael Guennebaud2015-09-19
|
* Since there is no reason for evaluators to be nested by reference, let's ↵Gravatar Gael Guennebaud2015-09-02
| | | | remove the evaluator<>::nestedType indirection.
* Cleaning pass on evaluators: remove the useless and error prone ↵Gravatar Gael Guennebaud2015-09-02
| | | | evaluator<>::type indirection.
* Allow to use arbitrary packet-types during evaluation.Gravatar Gael Guennebaud2015-08-07
| | | | This is implemented by adding a PacketType template parameter to packet and writePacket members of evaluator<>.
* Let unpacket_traits<> exposes the required alignment and make use of it ↵Gravatar Gael Guennebaud2015-08-07
| | | | everywhere
* First part of a big refactoring of alignment control to enable the handling ↵Gravatar Gael Guennebaud2015-08-06
| | | | | | | | | of arbitrarily aligned buffers. It includes: - AlignedBit flag is deprecated. Alignment is now specified by the evaluator through the 'Alignment' enum, e.g., evaluator<Xpr>::Alignment. Its value is in Bytes. - Add several enums to specify alignment: Aligned8, Aligned16, Aligned32, Aligned64, Aligned128. AlignedMax corresponds to EIGEN_MAX_ALIGN_BYTES. Such enums are used to define the above Alignment value, and as the 'Options' template parameter of Map<> and Ref<>. - The Aligned enum is now deprecated. It is now an alias for Aligned16. - Currently, traits<Matrix<>>, traits<Array<>>, traits<Ref<>>, traits<Map<>>, and traits<Block<>> also expose the Alignment enum.
* Fix a warning with iccGravatar Gael Guennebaud2015-06-23
|
* Fix ambiguous instanciation using clean class-level SFINAE in product_evaluatorGravatar Gael Guennebaud2015-06-19
|
* Remove a few deprecated internal expressionsGravatar Gael Guennebaud2015-06-19
|
* Fix permutation/transposiitons products wrt nested_evalGravatar Gael Guennebaud2015-06-19
|
* Introduce a AliasFreeProduct option for Permutations and TranspositionsGravatar Gael Guennebaud2015-06-19
|
* Improbe compatibility of Transpositions and evaluatorsGravatar Gael Guennebaud2015-06-19
|
* Make Transpositions use evaluatorsGravatar Gael Guennebaud2015-06-19
|
* Clean implementation of permutation * matrix products.Gravatar Gael Guennebaud2015-06-19
|
* bug #986: add support for coefficient-based product with 0 depth.Gravatar Gael Guennebaud2015-04-01
|
* Fix bug #987: wrong alignement guess in diagonal product.Gravatar Gael Guennebaud2015-03-31
|
* 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.
* Merge Index-refactoring branch with default, fix PastixSupport, remove some ↵Gravatar Gael Guennebaud2015-02-13
|\ | | | | | | useless typedefs
| * Fix missing evaluator in outer-productGravatar Gael Guennebaud2015-01-13
| |
* | 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.
* Make cuda_basic test compile again by adding lots of EIGEN_DEVICE_FUNC.Gravatar Christoph Hertzberg2014-10-13
| | | | Although the test passes now, there might still be some missing.
* Fix nested_eval<Product<> > which wrongly returned a Product<> expressionGravatar Gael Guennebaud2014-09-24
|
* Make constructors explicit if they could lead to unintended implicit conversionGravatar Christoph Hertzberg2014-09-23
|
* Adapt changeset 51b3f558bb76c11149fc64971db786798f1b692cGravatar Gael Guennebaud2014-09-14
| | | | | to evaluators: (Fix bug #822: outer products needed linear access, and add respective unit tests)
* Call product_generic_impl by default, and remove lot of boilerplate codeGravatar Gael Guennebaud2014-07-31
|
* Various minor fixesGravatar Gael Guennebaud2014-07-30
|
* Compilation fixesGravatar Gael Guennebaud2014-07-20
|
* Fix typo in dense * diagonal evaluator.Gravatar Gael Guennebaud2014-07-01
|
* Port products with permutation matrices to evaluators.Gravatar Jitse Niesen2014-04-15
|
* Move evaluation related flags from traits to evaluator and fix evaluators of ↵Gravatar Gael Guennebaud2014-03-12
| | | | MapBase and Replicate
* Move CoeffReadCost mechanism to evaluatorsGravatar Gael Guennebaud2014-03-10
|
* Fix evaluators unit test (i.e., when only EIGEN_ENABLE_EVALUATORS is definedGravatar Gael Guennebaud2014-03-10
|
* By-pass ProductBase for triangular and selfadjoint products and get rid of ↵Gravatar Gael Guennebaud2014-02-23
| | | | ProductBase
* Get rid of GeneralProduct<> for GemvProductGravatar Gael Guennebaud2014-02-21
|
* Get rid of GeneralProduct<> for GemmProductGravatar Gael Guennebaud2014-02-21
|
* Get rid of GeneralProduct for outer-products, and get rid of ScaledProductGravatar Gael Guennebaud2014-02-21
|
* Fix mixing scalar types with evaluatorsGravatar Gael Guennebaud2014-02-19
|
* Simplify implementation of coeff-based products to fully exploit our ↵Gravatar Gael Guennebaud2014-02-18
| | | | | | | reduxion mechanisms. If this results in performance regressions, then we should optimize reduxion rather than somehow duplicate the code.
* CleaningGravatar Gael Guennebaud2014-02-18
|