Commit Graph

3309 Commits

Author SHA1 Message Date
Benoit Steiner
17b9fbed34 Added preliminary support for half floats on CUDA GPU. For now we can simply convert floats into half floats and vice versa 2016-02-19 06:16:07 +00:00
Benoit Steiner
8ce46f9d89 Improved implementation of ptanh for SSE and AVX 2016-02-18 13:24:34 -08:00
Eugene Brevdo
832380c455 Merged eigen/eigen into default 2016-02-17 14:44:06 -08:00
Eugene Brevdo
06a2bc7c9c Tiny bugfix in SpecialFunctions: some compilers don't like doubles
implicitly downcast to floats in an array constructor.
2016-02-17 14:41:59 -08:00
Gael Guennebaud
f6f057bb7d bug #1166: fix shortcomming in gemv when the destination is not a vector at compile-time. 2016-02-15 21:43:07 +01:00
Benoit Steiner
3628f7655d Made it possible to run the scalar_binary_pow_op functor on GPU 2016-02-11 15:05:03 -08:00
Benoit Steiner
c569cfe12a Inline the +=, -=, *= and /= operators consistently between DenseBase.h and SelfCwiseBinaryOp.h 2016-02-11 09:33:32 -08:00
Gael Guennebaud
2d35c0cb5f Merged in rmlarsen/eigen (pull request PR-163)
Implement complete orthogonal decomposition in Eigen.
2016-02-11 15:12:34 +01:00
Benoit Steiner
33e2373f01 Merged in nnyby/eigen/nnyby/doc-grammar-fix-linearly-space-linearly-1443742971203 (pull request PR-138)
[doc] grammar fix: "linearly space" -> "linearly spaced"
2016-02-10 23:29:59 -08:00
Benoit Steiner
6d8b1dce06 Avoid implicit cast from double to float. 2016-02-10 18:07:11 -08:00
Benoit Jacob
9d6f1ad398 I'm told to use __EMSCRIPTEN__ by an Emscripten dev. 2016-02-10 12:48:34 -05:00
Benoit Steiner
bfb3fcd94f Optimized implementation of the tanh function for SSE 2016-02-10 08:52:30 -08:00
Benoit Steiner
2d523332b3 Optimized implementation of the hyperbolic tangent function for AVX 2016-02-10 08:48:05 -08:00
Benoit Jacob
e6ee18d6b4 Make the GCC workaround for sqrt GCC-only; detect Emscripten as non-GCC 2016-02-10 11:11:49 -05:00
Benoit Jacob
964a95bf5e Work around Emscripten bug - https://github.com/kripken/emscripten/issues/4088 2016-02-10 10:37:22 -05:00
Benoit Steiner
970751ece3 Disabling the nvcc warnings in addition to the clang warnings when clang is used as a frontend for nvcc 2016-02-09 20:55:50 -08:00
Benoit Steiner
5cc0dd5f44 Fixed the code that disables the use of variadic templates when compiling with nvcc on ARM devices. 2016-02-09 10:32:01 -08:00
Benoit Steiner
24d291cf16 Worked around nvcc crash when compiling Eigen on Tegra X1 2016-02-09 02:34:02 +00:00
Gael Guennebaud
c2bf2f56ef Remove custom unaligned loads for SSE. They were only useful for core2 CPU. 2016-02-08 14:29:12 +01:00
Gael Guennebaud
a4c76f8d34 Improve inlining 2016-02-08 11:33:02 +01:00
Rasmus Munk Larsen
86d6201d7b Merge. 2016-02-06 16:36:56 -08:00
Rasmus Munk Larsen
d904c8ac8f Implement complete orthogonal decomposition in Eigen. 2016-02-06 16:32:00 -08:00
Gael Guennebaud
c6a12d1dc6 Fix warning with gcc < 4.8 2016-02-06 18:06:51 +01:00
Gael Guennebaud
5b2d287878 bug #779: allow non aligned buffers for buffers smaller than the requested alignment. 2016-02-05 21:46:39 +01:00
Gael Guennebaud
e8e1d504d6 Add an explicit assersion on the alignment of the pointer returned by std::malloc 2016-02-05 21:38:16 +01:00
Gael Guennebaud
62a1c911cd Remove posix_memalign, _mm_malloc, and _aligned_malloc special paths. 2016-02-05 21:24:35 +01:00
Benoit Steiner
3ca1ae2bb7 Commented out the version of pexp<Packet8d> since it fails to compile with gcc 5.3 2016-02-04 13:49:06 -08:00
Benoit Steiner
23f69ab936 Added implementations of pexp, plog, psqrt, and prsqrt optimized for AVX512 2016-02-04 10:36:36 -08:00
Benoit Steiner
6c9cf117c1 Fixed indentation 2016-02-04 10:34:10 -08:00
Benoit Steiner
bcdcdace48 Pulled latest updates from trunk 2016-02-04 08:56:49 -08:00
Gael Guennebaud
659fc9c159 Remove dead code 2016-02-04 09:55:09 +01:00
Gael Guennebaud
d5d7798b9d Improve heuritics for switching between coeff-based and general matrix product implementation. 2016-02-04 09:53:47 +01:00
Benoit Steiner
f535378995 Added support for vectorized type casting of int to char. 2016-02-03 18:58:29 -08:00
Benoit Steiner
727ff26960 Disable 2 more nvcc warning messages 2016-02-03 16:01:37 -08:00
Benoit Steiner
bcbde37a11 Made sure the code compiles when EIGEN_HAS_C99_MATH isn't defined 2016-02-03 14:53:08 -08:00
Benoit Steiner
f933f69021 Added a few comments 2016-02-03 14:12:18 -08:00
Benoit Steiner
5d82e47ef6 Properly disable nvcc warning messages in user code. 2016-02-03 14:10:06 -08:00
Benoit Steiner
d7742d22e4 Revert the nvcc messages to their default severity instead of the forcing them to be warnings 2016-02-03 13:47:28 -08:00
Benoit Steiner
492fe7ce02 Silenced some unhelpful warnings generated by nvcc. 2016-02-03 12:51:19 -08:00
Gael Guennebaud
70dc14e4e1 bug #1161: fix division by zero for huge scalar types 2016-02-03 18:25:41 +01:00
Benoit Steiner
ef66f2887b Updated the matrix multiplication code to make it compile with AVX512 enabled. 2016-02-01 14:38:05 -08:00
Benoit Steiner
85b6d82b49 Generalized predux4 to support AVX512 packets, and renamed it predux_half.
Disabled the implementation of pabs for avx512 since the corresponding intrinsics are not shipped with gcc
2016-02-01 14:35:51 -08:00
Gael Guennebaud
6e0a86194c Fix integer path for num_steps==1 2016-02-01 15:00:04 +01:00
Gael Guennebaud
e1d219e5c9 bug #698: fix linspaced for integer types. 2016-02-01 14:25:34 +01:00
Benoit Steiner
3f1ee45833 Fixed compilation errors triggered by duplicate inline declaration 2016-01-31 10:48:49 -08:00
Gael Guennebaud
d142165942 bug #667: declare several critical functions as FORECE_INLINE to make ICC happier.
<g.gael@free.fr> HG: branch 'default' HG: changed Eigen/src/Core/ArrayBase.h HG: changed Eigen/src/Core/AssignEvaluator.h HG: changed
Eigen/src/Core/CoreEvaluators.h HG: changed Eigen/src/Core/CwiseUnaryOp.h HG: changed Eigen/src/Core/DenseBase.h HG: changed Eigen/src/Core/MatrixBase.h
2016-01-31 16:34:10 +01:00
Gael Guennebaud
1bc207c528 backout changeset d4a9e61569
: the extended SparseView is not needed anymore
2016-01-30 14:43:21 +01:00
Gael Guennebaud
8ed1553d20 bug #632: implement general coefficient-wise "dense op sparse" operations through specialized evaluators instead of using SparseView.
This permits to deal with arbitrary storage order, and to by-pass the more complex iterator of the sparse-sparse case.
2016-01-30 14:39:50 +01:00
Gael Guennebaud
d4a9e61569 Extend SparseView to allow keeping explicit zeros. This is equivalent to sparseView(1,-1) but faster because the test is removed at compile-time. 2016-01-29 22:07:56 +01:00
Gael Guennebaud
d8d37349c3 bug #696: enable zero-sized block at compile-time by relaxing the respective assertion 2016-01-29 12:44:49 +01:00