Commit Graph

4803 Commits

Author SHA1 Message Date
Gael Guennebaud
130f891bb0 bug #1278: ease parsing 2016-08-22 15:00:29 +02:00
Igor Babuschkin
59bacfe520 Fix compilation on CUDA 8 by removing call to h2log1p 2016-08-15 23:38:05 +01:00
Christoph Hertzberg
c83b754ee0 bug #1272: Disable assertion when total number of columns is zero.
Also moved assertion to finished() method and adapted unit-test
2016-08-12 15:15:34 +02:00
Igor Babuschkin
aee693ac52 Add log1p support for CUDA and half floats 2016-08-08 20:24:59 +01:00
Benoit Steiner
72096f3bd4 Merged in suiyuan2009/eigen/fix_tanh_inconsistent_for_tensorflow (pull request PR-215)
Fix_tanh_inconsistent_for_tensorflow
2016-08-08 09:06:45 -07:00
Christoph Hertzberg
3e4a33d4ba bug #1272: Let CommaInitializer work for more border cases (enhances fix of bug #1242).
The unit test tests all combinations of 2x2 block-sizes from 0 to 3.
2016-08-08 17:26:48 +02:00
Ziming Dong
1031223c09 fix tanh inconsistent 2016-08-06 19:48:50 +08:00
Benoit Steiner
fe778427f2 Fixed the constructors of the new half_base class. 2016-08-04 18:32:26 -07:00
Benoit Steiner
9506343349 Fixed the isnan, isfinite and isinf operations on GPU 2016-08-04 17:25:53 -07:00
Gael Guennebaud
17b9a55d98 Move Eigen::half_impl::half to Eigen::half while preserving the free functions to the Eigen::half_impl namespace together with ADL 2016-08-04 00:00:43 +02:00
Gael Guennebaud
7995cec90c Fix vectorization logic for coeff-based product for some corner cases. 2016-07-31 15:20:22 +02:00
Benoit Steiner
02fe89f5ef half implementation has been moved to half_impl namespace 2016-07-29 15:09:34 -07:00
Christoph Hertzberg
c5b893f434 bug #1266: half implementation has been moved to half_impl namespace 2016-07-29 18:36:08 +02:00
Gael Guennebaud
4057f9b1fc Enable slice-vectorization+inner-unrolling when unaligned vectorization is allowed. For instance, this permits to vectorize 5x5 matrices (including product) 2016-07-28 13:47:33 +02:00
Gael Guennebaud
a72752caac Vectorize more small product expressions by letting the general assignement logic decides on the sizes that are OK for vectorization. 2016-07-28 11:21:07 +02:00
Gael Guennebaud
f6b3cf8de9 Bump to 3.3-beta2 2016-07-26 23:51:59 +02:00
Gael Guennebaud
7f7e84aa36 Fix compilation with MKL support 2016-07-26 13:31:29 +02:00
Gael Guennebaud
c581c8fa79 Fix with expession template scalar types. 2016-07-26 11:33:28 +02:00
Gael Guennebaud
9c663e4ee8 Clean references to MKL in LAPACKe support. 2016-07-25 18:20:08 +02:00
Gael Guennebaud
4d54e3dd33 bug #173: remove dependency to MKL for LAPACKe backend. 2016-07-25 17:55:07 +02:00
Gael Guennebaud
34b483e25d bug #1249: enable use of __builtin_prefetch for GCC, clang, and ICC only. 2016-07-25 15:17:45 +02:00
Gael Guennebaud
9908020d36 Add minimal support for Array<string>, and fix Tensor<string> 2016-07-25 14:25:56 +02:00
Gael Guennebaud
b118bc76eb Add digits10 overload for complex. 2016-07-25 12:33:21 +02:00
Gael Guennebaud
e1c7c5968a Update doc. 2016-07-25 11:18:04 +02:00
Gael Guennebaud
8fffc81606 Add NumTraits::digits10() function based on numeric_limits::digits10 and make use of it for printing matrices. 2016-07-25 11:13:01 +02:00
Gael Guennebaud
72744d93ef Allows the compiler to inline outer products (the change from default to dont-inline in changeset 737bed19c1
was not motivated)
2016-07-22 17:02:28 +02:00
Gael Guennebaud
395c835f4b Fix CUDA compilation 2016-07-22 15:30:24 +02:00
Gael Guennebaud
47afc9a365 More cleaning in half:
- put its definition and functions in its own half_impl namespace such that the free function does not polute the Eigen namespace while still making them visible for half through ADL.
 - expose Eigen::half throguh a using statement
 - move operator<< from std to half_float namespace
2016-07-22 14:33:28 +02:00
Gael Guennebaud
0f350a8b7e Fix CUDA compilation 2016-07-21 18:47:07 +02:00
Gael Guennebaud
bf91a44f4a Use ADL and log10 for printing matrices. 2016-07-21 15:48:24 +02:00
Gael Guennebaud
87fbda812f Add missing log10 and random generator for half. 2016-07-21 15:46:45 +02:00
Gael Guennebaud
01d12d3e82 Some cleanup in Halh: standard functions should be defined in the namespace of the class half to make ADL work, and thus the global is* functions can be removed. 2016-07-21 15:10:48 +02:00
Gael Guennebaud
9e8476ef22 Add missing Eigen::rsqrt global function 2016-07-20 11:59:49 +02:00
Gael Guennebaud
4b4c296d6e Simplify ScalarBinaryOpTraits by removing the Defined enum, and extend its documentation. 2016-07-20 09:56:39 +02:00
Gael Guennebaud
e3bf874c83 Workaround MSVC 2010 compilation issue. 2016-07-18 15:17:25 +02:00
Gael Guennebaud
0f89c6d6b5 Add a summary of possible values for EIGEN_COMP_MSVC 2016-07-18 15:16:13 +02:00
Gael Guennebaud
79574e384e Make scalar_product_op the default (instead of void) 2016-07-18 12:03:05 +02:00
Gael Guennebaud
6a3c451c1c Permits call to explicit ctor. 2016-07-18 12:02:20 +02:00
Gael Guennebaud
db9b154193 Add missing non-const reverse method in VectorwiseOp. 2016-07-16 15:19:28 +02:00
Gael Guennebaud
a96a7ce3f7 Move CUDA's special functions to SpecialFunctions module. 2016-07-11 18:39:11 +02:00
Gael Guennebaud
fd60966310 merge 2016-07-11 18:11:47 +02:00
Konstantinos Margaritis
ef05463fcf Merged kmargar/eigen/tip into default, Altivec/VSX port should be working ok now. 2016-07-10 16:11:46 +03:00
Konstantinos Margaritis
9f7caa7e7d minor fixes for big endian altivec/vsx 2016-07-10 07:05:10 -03:00
Gael Guennebaud
2f7e2614e7 bug #1232: refactor special functions as a new SpecialFunctions module, currently in unsupported/. 2016-07-08 11:13:55 +02:00
Gael Guennebaud
66917299a9 Add debug output 2016-07-06 22:27:15 +02:00
Gael Guennebaud
c3b23d7dbf Fix support of Intel's VML 2016-07-06 14:07:32 +02:00
Gael Guennebaud
8ec4d6480d Fix compilation with recent updates of icc 2016 2016-07-06 14:07:14 +02:00
Gael Guennebaud
367ef66af3 Re-enable some specializations for Assignment<.,Product<>> 2016-07-05 22:58:14 +02:00
Gael Guennebaud
ec02af1047 Fix template resolution. 2016-07-04 17:37:33 +02:00
Gael Guennebaud
91b3039013 Change the semantic of the last template parameter of Assignment from "Scalar" to "SFINAE" only.
The previous "Scalar" semantic was obsolete since we allow for different scalar types in the source and destination expressions.
On can still specialize on scalar types through SFINAE and/or assignment functor.
2016-07-04 11:02:00 +02:00