Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | Add explicit regression test for bug #1622 | 2018-11-16 | |
| | |||
* | PR 544: Set requestedAlignment correctly for SliceVectorizedTraversals | 2018-11-13 | |
| | | | | | | | | | | | | | | | | | | | | | | | Commit aa110e681b8b2237757a652ba47da49e1fbd2cd6 optimised the multiplication of small dyanmically sized matrices by restricting the packet size to a maximum of 4, increasing the chances that SIMD instructions are used in the computation. However, it introduced a mismatch between the packet size and the requestedAlignment. This mismatch can lead to crashes when the destination is not aligned. This patch fixes the issue by ensuring that the AssignmentTraits are correctly computed when using a restricted packet size. * * * Bind LinearPacketType to MaxPacketSize This commit applies any packet size limit specified when instantiating copy_using_evaluator_traits to the LinearPacketType, providing that the size of the destination is not known at compile time. * * * Add unit test for restricted packet assignment A new unit test is added to check that multiplication of small dynamically sized matrices works correctly when the packet size is restricted to 4 and the destination is unaligned. | ||
* | Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with ↵ | 2018-07-17 | |
| | | | | | | | | | EIGEN_DECLARE_TEST(mytest) { /* code */ }. This provide several advantages: - more flexibility in designing unit tests - unit tests can be glued to speed up compilation - unit tests are compiled with same predefined macros, which is a requirement for zapcc | ||
* | Fix compilation of evaluator unit test | 2016-06-14 | |
| | |||
* | Add unit test for CoeffReadCost | 2015-10-09 | |
| | |||
* | Remove debuging prod() and lazyprod() function, plus some cleaning in ↵ | 2015-10-07 | |
| | | | | noalias assignment | ||
* | Remove deprecated code not used by evaluators | 2014-09-18 | |
| | |||
* | Enable evaluators by default | 2014-08-29 | |
| | |||
* | Add evaluator support for diagonal products | 2014-02-17 | |
| | |||
* | Make selfqdjoint products use evaluators | 2013-12-13 | |
| | |||
* | Add support for triangular products with evaluators | 2013-12-07 | |
| | |||
* | Add direct assignment of products | 2013-12-02 | |
| | |||
* | Make swap unit test work with evaluators | 2013-12-02 | |
| | |||
* | Get rid of call_dense_swap_loop | 2013-12-02 | |
| | |||
* | Add evaluator/assignment to TriangularView expressions | 2013-12-02 | |
| | |||
* | Evaluator: introduce the main Assignment class, add call_assignment to ↵ | 2013-11-25 | |
| | | | | bypass NoAlias and AssumeAliasing, and some bits of cleaning | ||
* | Workaround a bunch of stupid warnings in unit tests | 2013-06-23 | |
| | |||
* | Make product eval-at-once. | 2012-06-29 | |
| | | | | | | | | | * Make product EvalAtOnce in cases OuterProduct, GemmProduct and GemvProduct * Ensure that product evaluators are nested inside EvalToTemp evaluator * As temporary kludge, evaluate expression to temporary in AllAtOnce traversal and pass expression operator to evalTo() | ||
* | Implement interface for NoAlias assignments. | 2012-06-29 | |
| | | | | | | | | * Rename the old copy_using_evaluators to noalias_copy_using_evaluators. * Write a new copy_using_evaluators which strips NoAlias expression, if present, and calls noalias_copy_using_evaluators; in future, it will also take care of aliasing in products. * Add expression() getter to NoAlias. | ||
* | Move (part of) evaluation of products to evaluator objects. | 2012-06-29 | |
| | | | | | | | * Copy implementation from CoeffBasedProduct. * Copy implementation from GeneralProduct in InnerProduct case. * For GeneralProduct in other cases, call the evalTo() member function with expression objects in constructor of evaluator. | ||
* | Resize lhs automatically in copy_using_evaluator(). | 2012-06-28 | |
| | |||
* | Fix an evaluator test which was wrong and failed in debug builds. | 2012-06-24 | |
| | |||
* | resurrect expression evaluators | 2012-06-22 | |
| | |||
* | Remove evaluators for 2.1 release. | 2011-12-14 | |
| | | | | We plan to re-instate them when we branch 2.2 (see bug #388). | ||
* | Implement compound assignments using evaluator of SelfCwiseBinaryOp. | 2011-04-28 | |
| | |||
* | Implement swap using evaluators. | 2011-04-28 | |
| | |||
* | Use copyCoeff/copyPacket in copy_using_evaluator. | 2011-04-22 | |
| | |||
* | Implement evaluator for Diagonal. | 2011-04-22 | |
| | |||
* | Implement evaluators for Reverse. | 2011-04-22 | |
| | |||
* | Implement evaluators for ArrayWrapper and MatrixWrapper. | 2011-04-22 | |
| | |||
* | Implement unrolling in copy_using_evaluator() . | 2011-04-13 | |
| | |||
* | Implement evaluator for PartialReduxExpr as a dumb wrapper. | 2011-04-13 | |
| | |||
* | Implement evaluator for Replicate. | 2011-04-12 | |
| | |||
* | Implement evaluator for Select. | 2011-04-12 | |
| | |||
* | Implement evaluator for CwiseUnaryView | 2011-04-05 | |
| | |||
* | Implement evaluator for Map | 2011-04-05 | |
| | |||
* | Evaluators: add Block evaluator as dumb wrapper, add slice vectorization. | 2011-03-31 | |
| | |||
* | Evaluators: Implement linear traversal, better testing. | 2011-03-27 | |
| | |||
* | Evaluators: Implement LinearVectorizedTraversal, packet ops in evaluators. | 2011-03-25 | |
| | |||
* | makes evaluator test use VERIFY_IS_APPROX | 2011-03-23 | |
| | |||
* | add a stupid Product<A,B> expression produced by prod(a,b), and implement a ↵ | 2011-03-23 | |
| | | | | first version of its evaluator | ||
* | import evaluator works | 2011-03-23 | |