aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Core/GenericPacketMath.h
Commit message (Collapse)AuthorAge
* merge with main branchGravatar Gael Guennebaud2013-07-17
|\
| * Add missing namespace prefix in pconjGravatar Gael Guennebaud2013-07-03
| |
* | Add nvcc support for normalize, initializers, and fuzzy comparisonsGravatar Gael Guennebaud2013-06-05
| |
* | merge with default branchGravatar Gael Guennebaud2013-04-19
|\|
| * Extend internal doc of ploaddup and palignGravatar Gael Guennebaud2013-04-17
| |
* | Port SelfCwiseBinaryOp and Dot.h to nvcc, fix portability issue with ↵Gravatar Gael Guennebaud2013-04-05
|/ | | | std::min/max
* Fix bug #314:Gravatar Gael Guennebaud2012-11-06
| | | | | - remove most of the metaprogramming kung fu in MathFunctions.h (only keep functions that differs from the std) - remove the overloads for array expression that were in the std namespace
* Automatic relicensing to MPL2 using Keirs script. Manual fixup follows.Gravatar Benoit Jacob2012-07-13
|
* Get rid of include directives inside namespace blocks (bug #339).Gravatar Jitse Niesen2012-04-15
|
* fix static inline versus inline static issues (the former is the correct order)Gravatar Gael Guennebaud2012-01-31
|
* protect calls to min and max with parentheses to make Eigen compatible with ↵Gravatar Gael Guennebaud2011-07-21
| | | | | | | default windows.h (transplanted from 49b6e9143e1d74441924c0c313536e263e12a55c )
* Simplify the use of custom scalar types, the rule is to never directly call ↵Gravatar Gael Guennebaud2011-05-25
| | | | | | | a standard math function using std:: but rather put a using std::foo before and simply call foo: using std::max; max(a,b);
* Document enums in Constants.h (bug #248).Gravatar Jitse Niesen2011-05-03
| | | | | | To get the links to work, I also had to document the Eigen namespace. Unfortunately, this means that the word Eigen is linked whenever it appears in the docs.
* re-enable fast pset1-pstore by introducing a new higher level pstore1 functionGravatar Gael Guennebaud2011-03-02
|
* fix a couple of issues with pcplxflipGravatar Gael Guennebaud2011-02-23
|
* factorize implementation of standard real unary math functions, and add ↵Gravatar Gael Guennebaud2011-02-17
| | | | acos, asin
* add tan function in Array worldGravatar Jason Newton2011-02-03
|
* bug #86 : use internal:: namespace instead of ei_ prefixGravatar Benoit Jacob2010-10-25
|
* wip: extend the gebp kernel to optimize complex and mixed productsGravatar Gael Guennebaud2010-07-19
|
* 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...
* scalars fitting in a single packet requires more work, step 1Gravatar Gael Guennebaud2010-07-08
| | | | | * add a, Alignable trait * update LinearVectorization assignment
* s/IsVectorized/VectorizableGravatar Gael Guennebaud2010-07-07
|
* * add a IsVectorized mechanism (instead of packet-size>1...)Gravatar Gael Guennebaud2010-07-06
| | | | * vectorize complex<double>
* * extend the Has* packet traits and makes all functor use itGravatar Gael Guennebaud2010-07-05
| | | | * extend the packing routines to support conjugation
* email changeGravatar Gael Guennebaud2010-06-24
|
* fix linking errors with multiply defined functionsGravatar Benoit Jacob2010-06-18
|
* packet math functions:Gravatar Benoit Jacob2010-06-15
| | | | | - take const Packet& args like the other packet funcs - SSE specializations: make them be actual template specializations
* (proper commit this time)Gravatar Konstantinos Margaritis2010-04-24
| | | | | | | replaced _mm_prefetch in GeneralBlockPanelKernel.h, with ei_prefetch() 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.
* Backed out changeset 6972c140f737874d88da0e225c7c27b4563a4518Gravatar Konstantinos Margaritis2010-04-24
|
* replaced _mm_prefetch in GeneralBlockPanelKernel.h, with ei_prefetch() ↵Gravatar oem2010-04-24
| | | | | | | | 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.
* Added an ei_linspaced_op to create linearly spaced vectors.Gravatar Hauke Heibel2010-01-26
| | | | | | | | | Added setLinSpaced/LinSpaced functionality to DenseBase. Improved vectorized assignment - overcomes MSVC optimization issues. CwiseNullaryOp is now requiring functors to offer 1D and 2D operators. Adapted existing functors to the new CwiseNullaryOp requirements. Added ei_plset to create packages as [a, a+1, ..., a+size]. Added more nullaray unit tests.
* Hey, finally the copyCoeff stuff is not only used to implement swap anymore :)Gravatar Gael Guennebaud2009-11-20
| | | | | | Add an internal pseudo expression allowing to optimize operators like +=, *= using the copyCoeff stuff. This allows to easily enforce aligned load for the destination matrix everywhere.
* finally directly calling the low-level products is fasterGravatar Gael Guennebaud2009-07-10
|
* remove sentence "Eigen itself is part of the KDE project."Gravatar Benoit Jacob2009-05-22
| | | | it never made very precise sense. but now does it still make any?
* oops, bad copy paste in ei_psqrt, thanks to Jitse NiesenGravatar Gael Guennebaud2009-04-02
|
* make special ei_p functions static to avoid linking issues (they are tooGravatar Gael Guennebaud2009-03-27
| | | | complex to be inlined)
* add vectorization of sqrt for floatGravatar Gael Guennebaud2009-03-27
|
* for some reason passing the argument by const reference killed the perfGravatar Gael Guennebaud2009-03-25
| | | | | (in the packet version of sin, cos, exp, lop), so let's pass them by value. Also, improve the perf of ei_plog by reducing dependencies.
* add SSE2 versions of sin, cos, log, exp using code from JulienGravatar Gael Guennebaud2009-03-25
| | | | | | | | Pommier. They are for float only, and they return exactly the same result as the standard versions in about 90% of the cases. Otherwise the max error is below 1e-7. However, for very large values (>1e3) the accuracy of sin and cos slighlty decrease. They are about 3 or 4 times faster than 4 calls to their respective standard versions. So, is it ok to enable them by default in their respective functors ?
* add vectorization of unary operator-() (the AltiVec version is probablyGravatar Gael Guennebaud2009-03-20
| | | | broken)
* add the vectorization of absGravatar Gael Guennebaud2009-03-09
|
* * exit Sum.h, exit Prod.h, welcome vectorization of redux() !Gravatar Gael Guennebaud2009-02-12
| | | | * add vectorization for minCoeff and maxCoeff
* * add ei_predux_mul internal functionGravatar Gael Guennebaud2009-02-10
| | | | * apply Ricard Marxer's prod() patch with fixes for the vectorized path
* Add vectorization of Reverse (was more tricky than I thought) andGravatar Gael Guennebaud2009-02-06
| | | | simplify the index based functions
* Update e-mail addressGravatar Benoit Jacob2008-11-24
|
* spelling + some krazy directivesGravatar Gael Guennebaud2008-08-28
|
* * move memory related stuff to util/Memory.hGravatar Gael Guennebaud2008-08-26
* clean ugly doxygen inheritence of expressions * keep improving the documentation... slowly !