Benoit Steiner
db9dbbda32
Improved performance of full reduction by 2 order of magnitude on CPU and 3 orders of magnitude on GPU
2015-06-29 14:06:32 -07:00
Benoit Steiner
f0ce85b757
Improved support for fixed size tensors
2015-06-29 14:04:15 -07:00
Benoit Steiner
670c71d906
Express the full reduction operations (such as sum, max, min) using TensorDimensionList
2015-06-29 11:30:36 -07:00
Benoit Steiner
d8098ee7d5
Added support for tanh function to the tensor code
2015-06-29 11:14:42 -07:00
Benoit Steiner
3625734bc8
Moved some utilities to TensorMeta.h to make it easier to reuse them accross several tensor operations.
...
Created the TensorDimensionList class to encode the list of all the dimensions of a tensor of rank n. This could be done using TensorIndexList, however TensorIndexList require cxx11 which isn't yet supported as widely as we'd like.
2015-06-29 10:49:55 -07:00
Gael Guennebaud
392a30db82
Use VERIFY_IS_EQUAL instead of VERIFY(a==b) to get more feedback in case of failure
2015-06-26 16:22:49 +02:00
Gael Guennebaud
c911fc8dee
split compiler intensive bdcsvd_1 unit test
2015-06-26 16:14:23 +02:00
Gael Guennebaud
98ff17eb9e
Add special path for matrix<complex>/real.
...
This also fixes underflow issues when scaling complex matrices through complex/complex operator.
2015-06-26 16:08:15 +02:00
Gael Guennebaud
e102ddbf1f
bug #1026 : fix infinite loop for an empty input
2015-06-26 14:02:52 +02:00
Gael Guennebaud
555b9c6843
Doc: explain perf and multithreading issues in sparse iterative solvers
2015-06-26 10:49:40 +02:00
Gael Guennebaud
53b930887d
Enable OpenMP parallelization of row-major-sparse * dense products.
...
I observed significant speed-up of the CG solver.
2015-06-26 10:32:34 +02:00
Gael Guennebaud
3f49cf4c90
More msvc 2013/2015 workarounds
2015-06-26 09:07:53 +02:00
Gael Guennebaud
7f824dd613
Optimize CG to enable faster spare row-major * dense vector products when the input matrix is complete (Upper|Lower) but column major.
2015-06-25 17:17:38 +02:00
Gael Guennebaud
c5f9eafcbc
Fix assignement to selfadjoint-view when testing real-world problems
2015-06-25 17:08:58 +02:00
Gael Guennebaud
33e699c9fe
Remove redundant accessors in Reverse
2015-06-25 14:14:59 +02:00
Gael Guennebaud
6b4d255cab
Avoid division by a zero complex
2015-06-25 14:04:05 +02:00
Gael Guennebaud
973b0a90db
Clarify documentation of the tolerance and error returned in iterative solvers
2015-06-25 13:51:13 +02:00
Gael Guennebaud
84264ceebc
workaround msvc 2013/2015 wrong instanciation of isnan, isfinite, isinf
2015-06-25 10:00:26 +02:00
Gael Guennebaud
b4ab72678c
bug #1000 : MSVC 2013 does need the operator= workaround
2015-06-25 09:45:22 +02:00
Gael Guennebaud
788941d3b1
Workaround MSVC ambiguous instanciation
2015-06-24 23:35:17 +02:00
Gael Guennebaud
4c8cd13b35
Add explicit ctor for diagonal to sparse conversion
2015-06-24 18:11:06 +02:00
Gael Guennebaud
c38c195321
Document how cross behaves on complex numbers
2015-06-24 18:02:33 +02:00
Gael Guennebaud
23535ed31c
Add unit test for dense = SparseQR::matrixQ
2015-06-24 17:55:41 +02:00
Gael Guennebaud
62f21e2d11
Add support for sparse = diagonal
2015-06-24 17:55:00 +02:00
Gael Guennebaud
763c833637
Make SparseSelfAdjointView, twists, and SparseQR more evaluator friendly
2015-06-24 17:54:09 +02:00
Gael Guennebaud
36643eec0c
Add a call_assignment_no_alias_no_transpose shortcut
2015-06-24 17:50:43 +02:00
Gael Guennebaud
02db7c9bc6
Inherit operator+= and -= with 'using' kkeyword
2015-06-24 17:49:20 +02:00
Gael Guennebaud
53a61a067b
Fallback to CMAKE_CXX_COMPILER_VERSION if VS version unknown
2015-06-24 15:17:37 +02:00
Gael Guennebaud
95e19be381
Fix compilation of MKL Pardiso support
2015-06-24 14:53:43 +02:00
Gael Guennebaud
2a33075aeb
std::isnan is c++11 only
2015-06-24 10:29:17 +02:00
Gael Guennebaud
23da99492f
Add unit-test for Visual2013 ambiguous call to operator=
2015-06-24 10:27:02 +02:00
Benoit Steiner
6441befbb3
Added more checks to test the correctness of the pexp implementation
2015-06-23 19:12:46 -07:00
Gael Guennebaud
c3e398d138
Fix overflow when checking SVD accuracy
2015-06-23 15:05:20 +02:00
Gael Guennebaud
b0d08869a9
Fix underflow in 3x3 tridiagonalization
2015-06-23 14:54:31 +02:00
Gael Guennebaud
18c9d155f3
Fix the fact that float(int) != float(int(float(int)))
2015-06-23 14:33:00 +02:00
Gael Guennebaud
71523a2e25
Fix a warning with icc
2015-06-23 14:20:20 +02:00
Gael Guennebaud
d9778f3391
Enable VML's pow wrapper on windows (the previous wrapper used the Fortran interface)
2015-06-23 14:04:50 +02:00
Gael Guennebaud
5f9630d7f9
bug #923 : update support for Intel's VML wrt new evaluation mechanisms
2015-06-23 14:03:25 +02:00
Gael Guennebaud
793e4c6d77
bug #923 : fix EIGEN_USE_BLAS mode
2015-06-23 11:13:24 +02:00
Gael Guennebaud
307c4fc292
Workaround missalignment produced by first_aligned for PacketSize==1 and size==1
2015-06-23 10:10:17 +02:00
Gael Guennebaud
bb3a9b4941
Use Ref<> to bypass forceAlignmentIf
2015-06-22 17:48:28 +02:00
Gael Guennebaud
476beed7f8
bug #1017 : apply Christoph's patch preventing underflows in makeHouseholder
2015-06-22 16:51:45 +02:00
Gael Guennebaud
9fc1c92137
Fix isinf unit tests
2015-06-22 16:48:27 +02:00
Gael Guennebaud
9c7cfa7dab
Update list of main modules
2015-06-22 14:17:24 +02:00
Gael Guennebaud
3ccd23efc0
Update coeff-wise quick-reference doc.
2015-06-22 14:08:54 +02:00
Gael Guennebaud
0848ba0a6e
Fix return nullary return types: it must be based on the PlainObject type instead of the expression type.
2015-06-22 10:52:08 +02:00
Gael Guennebaud
b3b3dcad05
Reduce compiler memory consumption for SVD unit tests
2015-06-22 09:58:06 +02:00
Gael Guennebaud
40821876ea
Fix regression on CompressedStorage::operator=
2015-06-20 13:59:13 +02:00
Michael Abrahams
7043083be4
Use GCC flags in mingw
2015-06-20 18:54:41 +00:00
Gael Guennebaud
84aaef93ba
Merged in vanhoucke/eigen_vanhoucke (pull request PR-118)
...
Fix two small undefined behaviors caught by static analysis.
2015-06-20 13:56:48 +02:00