Benoit Steiner
6799c26cd6
Fixed a typo in a test and a compilation warning
2015-07-17 16:50:47 -07:00
Benoit Steiner
7a39439904
Rewrote Eigen::dimensions_match to prevent a static assertion when the rank of the tensors is different.
2015-07-17 16:46:30 -07:00
Benoit Steiner
06a22ca5bd
Added support for sigmoid function to the tensor module
2015-07-17 09:29:00 -07:00
Benoit Steiner
a5ec25f11c
Use the new EIGEN_HAS_INDEX_LIST define to enable the cxx11_tensor_index_list tests
2015-07-16 13:16:08 -07:00
Benoit Steiner
05787f8367
Added support for tensor inflation.
2015-07-16 09:04:05 -07:00
Benoit Steiner
4b3d697e12
Fixed compilation error in a cuda test
2015-07-15 17:14:24 -07:00
Benoit Steiner
8315e025e1
Updated the cuda tests to use the new GpuDevice constructor
2015-07-15 12:39:26 -07:00
Benoit Steiner
b80036abec
Enabled the construction of a fixed sized tensor directly from an expression.
2015-07-13 11:16:37 -07:00
Benoit Steiner
3912ca0d53
Fixed a bug in the integer division code that caused some large numerators to be incorrectly handled
2015-07-13 11:14:59 -07:00
Gael Guennebaud
b8df8815f4
Fix operator<<(ostream,AlignedVector3)
2015-07-13 13:55:59 +02:00
Benoit Steiner
e6297741c9
Added support for generation of random complex numbers on CUDA devices
2015-07-07 17:40:49 -07:00
Benoit Steiner
a93af65938
Improved and cleaned up the 2d patch extraction code
2015-07-07 08:52:14 -07:00
Benoit Steiner
f1f480b116
Added support for user defined custom tensor op.
2015-06-30 15:36:29 -07:00
Benoit Steiner
dc31fcb9ba
Added support for 3D patch extraction
2015-06-30 14:48:26 -07:00
Benoit Steiner
109005c6c9
Added a test for multithreaded full reductions
2015-06-30 13:08:12 -07:00
Benoit Steiner
a4aa7c6217
Fixed a few compilation warnings
2015-06-30 10:36:17 -07:00
Benoit Steiner
fffe63045c
Added a test for full reductions on GPU
2015-06-29 14:10:32 -07:00
Benoit Steiner
6a9a29e96f
Fixed a compilation warning
2015-06-17 10:14:13 -07:00
Gael Guennebaud
38874b1651
Fix shadow warnings in Tensor module
2015-06-16 14:43:46 +02:00
Gael Guennebaud
e2e66930c6
Fix compilation of alignedvector3 unit test
2015-06-16 14:40:55 +02:00
Benoit Steiner
6b800744ce
Moved away from std::async and std::future as the underlying mechnism for the thread pool device. On several platforms, the functions passed to std::async are not scheduled in the order in which they are given to std::async, which leads to massive performance issues in the contraction code.
...
Instead we now have a custom thread pool that ensures that the functions are picked up by the threads in the pool in the order in which they are enqueued in the pool.
2015-05-20 13:52:07 -07:00
Benoit Steiner
48f6b274e2
Fixed compilation error triggered by gcc 4.7
2015-05-20 08:54:44 -07:00
Benoit Steiner
a81d17b73a
Added new version of the TensorIntDiv class optimized for 32 bit signed integers. It saves 1 register on CPU and 2 on GPU.
2015-05-19 13:59:52 -07:00
Christoph Hertzberg
8c6a3b5ace
Fix trivial warnings in LevenbergMarquardt module and test
2015-04-24 21:35:30 +02:00
Benoit Steiner
91359e1d0a
Added the ability to generate a tensor from a custom user defined 'generator'. This simplifies the creation of constant tensors initialized using specific regular patterns.
...
Created a gaussian window generator as a first use case.
2015-04-22 11:14:58 -07:00
Benoit Steiner
9c6b82bcd5
Use ptrdiff_t instead of size_t to encode fixed sizes. This silences several clang compilation warnings
...
(transplanted from 4400e4436ac7c5bbd305a03c21aa4bce24ae199b)
2015-04-17 09:12:18 -07:00
Benoit Steiner
da5b98a94d
Updated the cxx11_tensor_convolution test to avoid using cxx11 features. This should enable the test to compile with gcc 4.7 and older
2015-04-16 12:29:16 -07:00
Benoit Steiner
d19d09ae6a
Updated a regression test to avoid compilation errors when compiling with gcc 4.7
2015-04-16 12:15:27 -07:00
Benoit Steiner
0f82399fe9
Pulled latest changes from trunk
2015-04-14 19:13:34 -07:00
Benoit Steiner
1de49ef4c2
Fixed a bug when chipping tensors laid out in row major order.
2015-04-07 10:44:13 -07:00
Benoit Steiner
a1f1e1e51d
Fixed the order of 2 #includes
2015-04-06 10:41:39 -07:00
Benoit Steiner
74e558cfa8
Pulled latest updates from trunk
2015-04-01 23:24:11 -07:00
Benoit Steiner
678207e02a
Added regression tests for tensor convolutions
2015-03-31 09:08:08 -07:00
Benoit Steiner
731d7b84b4
Sharded a large test
2015-03-30 23:26:45 -07:00
Benoit Steiner
35722fa022
Made the index type a template parameter of the tensor class instead of encoding it in the options.
2015-03-30 14:55:54 -07:00
Benoit Steiner
d3f7915aeb
Pulled latest update from the eigen main codebase
2015-03-24 13:12:14 -07:00
Benoit Steiner
cc0f89eb3b
Changed the way lvalue operations are declared in TensorBase: this fixes constness isses that prevented some expressions mixing lvalues and rvalues from compiling.
2015-03-17 09:57:20 -07:00
Benoit Steiner
5144f66728
Fixed compilation warning
2015-03-16 13:17:52 -07:00
Benoit Steiner
0fd6d52724
Fixed compilation error with clang
2015-03-16 13:16:12 -07:00
Benoit Steiner
f218c0181d
Fixes the Lvalue computation by actually setting the LvalueBit properly when instantiating tensors of const T. Added a test to check the fix.
2015-03-16 13:05:00 -07:00
Benoit Steiner
131449298f
Fixed clang compilation warning
2015-02-28 03:01:19 -08:00
Benoit Steiner
56ea45ff0f
Silenced some compilation warnings
2015-02-28 02:37:41 -08:00
Benoit Steiner
bb483313f6
Fixed another batch of compilation warnings
2015-02-28 02:32:46 -08:00
Benoit Steiner
61409d9449
Silenced one more comilation warning
2015-02-28 01:49:09 -08:00
Benoit Steiner
37357a310f
Fixed compilation warnings
2015-02-27 23:54:24 -08:00
Benoit Steiner
78732186ee
Fixed compilation warnings
2015-02-27 23:51:16 -08:00
Benoit Steiner
306fceccbe
Pulled latest updates from trunk
2015-02-27 13:05:26 -08:00
Benoit Steiner
2386fc8528
Added support for 32bit index on a per tensor/tensor expression. This enables us to use 32bit indices to evaluate expressions on GPU faster while keeping the ability to use 64 bit indices to manipulate large tensors on CPU in the same binary.
2015-02-27 12:57:13 -08:00
Benoit Steiner
05089aba75
Switch to truncated casting when converting floating point types to integer. This ensures that vectorized casts are consistent with scalar casts
2015-02-27 09:27:30 -08:00
Benoit Steiner
573b377110
Added support for vectorized type casting of tensors
2015-02-27 08:46:04 -08:00
Benoit Steiner
57154fdb32
Can now use the tensor 'reverse' operation as a lvalue
2015-02-26 11:13:42 -08:00
Benoit Steiner
410070e5ab
Added more tests to validate support for tensors laid out in RowMajor order.
2015-02-25 16:14:59 -08:00
Benoit Steiner
1cfd51908c
Added support for RowMajor layout to the tensor patch extraction cofde.
2015-02-25 13:29:12 -08:00
Benoit Steiner
8afce86e64
Added support for RowMajor layout to the image patch extraction code
...
Speeded up the unsupported_cxx11_tensor_image_patch test and reduced its memory footprint
2015-02-25 09:48:54 -08:00
Gael Guennebaud
3594451ee0
Remove EIGEN_TEST_C++0x option and let EIGEN_TEST_CXX11 adds the -std=c++11 flag
2015-02-20 09:31:27 +01:00
Benoit Steiner
5d2fd64a1a
Fixed compilation error when compiling with gcc4.7
2015-03-03 08:56:49 -08:00
Christoph Hertzberg
31e2ffe82c
Replaced POSIX random() by internal::random
2015-02-28 18:39:37 +01:00
Christoph Hertzberg
682196e9fc
Fixed MPRealSupport
2015-02-28 16:41:00 +01:00
Gael Guennebaud
b10cd3afd2
Re-enbale detection of min/max parentheses protection, and re-enable mpreal_support unit test.
2015-02-27 22:38:00 +01:00
Benoit Steiner
00f048d44f
Added support for tensor concatenation as lvalue
2015-02-17 09:54:40 -08:00
Gael Guennebaud
fe51319980
Merge Index-refactoring branch with default, fix PastixSupport, remove some useless typedefs
2015-02-13 10:03:53 +01:00
Gael Guennebaud
0918c51e60
merge Tensor module within Eigen/unsupported and update gemv BLAS wrapper
2015-02-12 21:48:41 +01:00
Benoit Steiner
4470c99975
Added a test to validate tensor casting on cuda devices
2015-02-10 14:40:18 -08:00
Benoit Steiner
4716c2c666
Fixed compilation error
2015-02-10 12:06:19 -08:00
Gael Guennebaud
deecff97ed
typo
2015-02-10 19:22:05 +01:00
Gael Guennebaud
c6e8caf090
Allows Lower|Upper as a template argument of CG and MINRES: in this case the full matrix will be considered.
2015-02-10 18:57:41 +01:00
Benoit Steiner
01f7918788
Pulled latest fixes
2015-02-06 05:30:20 -08:00
Gael Guennebaud
b50ffaddf2
merge
2015-02-06 14:27:12 +01:00
Gael Guennebaud
c03c73c9b7
Fix clang compilation
2015-02-06 14:26:12 +01:00
Gael Guennebaud
668518aed6
Fix non initialized entries and comparison of very small numbers
2015-02-06 14:25:41 +01:00
Benoit Steiner
c739102ef9
Pulled the latest changes from the trunk
2015-02-06 05:25:03 -08:00
Benoit Steiner
2559fa9b0f
Fixed compilation error in the tensor broadcasting test
2015-02-06 02:55:18 -08:00
Benoit Steiner
dcb2a8b184
Added the EIGEN_HAS_CONSTEXPR define
...
Gate the tensor index list code based on the value of EIGEN_HAS_CONSTEXPR
2015-02-06 02:51:59 -08:00
Benoit Steiner
5a6ea4edf6
Added more tests to cover tensor reductions
2015-01-28 10:02:47 -08:00
Benoit Steiner
14f537c296
gcc doesn't consider that
...
template<typename OtherDerived> TensorStridingOp& operator = (const OtherDerived& other)
provides a valid assignment operator for the striding operation, and therefore refuses to compile code like:
result.stride(foo) = source.stride(bar);
Added the explicit
TensorStridingOp& operator = (const TensorStridingOp& other)
as a workaround to get the code to compile, and did the same in all the operations that can be used as lvalues.
2015-01-16 09:09:23 -08:00
Benoit Steiner
641e824c56
Added cube() operation
2015-01-15 11:11:48 -08:00
Benoit Steiner
b5124e7cfd
Created many additional tests
2015-01-14 15:46:04 -08:00
Benoit Steiner
0feff6e987
Expanded the functionality of index lists
2015-01-14 15:29:48 -08:00
Benoit Steiner
1a36590e84
Fixed the printing of RowMajor tensors
2015-01-14 12:43:20 -08:00
Benoit Steiner
b12dd1ae3c
Misc improvements for fixed size tensors
2015-01-14 12:39:34 -08:00
Benoit Steiner
8f4b8d204b
Improved the performance of tensor reductions
...
Added the ability to generate random numbers following a normal distribution
Created a test to validate the ability to generate random numbers.
2015-01-14 10:19:33 -08:00
Benoit Steiner
3bd2b41b2e
Created a test for tensor type casting
2015-01-14 10:17:02 -08:00
Benoit Steiner
4928ea1212
Added ability to reverse the order of the coefficients in a tensor
2015-01-14 10:15:58 -08:00
Benoit Steiner
b00fe1590d
Added ability to swap the layout of a tensor
2015-01-14 10:14:46 -08:00
Benoit Steiner
c94174b4fe
Improved tensor references
2015-01-14 10:13:08 -08:00
Benoit Steiner
9f98650d0a
Ensured that contractions that can be reduced to a matrix vector product work correctly even when the input coefficients aren't aligned.
2015-01-06 09:29:13 -08:00
Christoph Hertzberg
e8cdbedefb
bug #877 , bug #572 : Introduce a global Index typedef. Rename Sparse*::Index to StorageIndex, make Dense*::StorageIndex an alias to DenseIndex. Overall this commit gets rid of all Index conversion warnings.
2014-12-04 22:48:53 +01:00
Abhijit Kundu
48db34a7b9
Adding missing OPENGL_LIBRARIES for openglsupport test. Also adding OpenGL include directories as a better pratice even though these are system include directories in most systems.
2014-12-04 01:18:47 -05:00
Benoit Steiner
ec785b0180
Added support for extraction of patches from images
2014-11-13 09:28:54 -08:00
Benoit Steiner
c2d1074932
Added support for static list of indices
2014-11-12 22:25:38 -08:00
Benoit Steiner
cb37f818ca
Fixed a compilation error triggered by some operations on fixed sized tensors
2014-11-05 23:25:11 -08:00
Benoit Steiner
9a06a71627
Fixed a test
2014-11-05 07:49:51 -08:00
Benoit Steiner
85c3389b28
Fixed a test
2014-10-31 00:04:13 -07:00
Gael Guennebaud
21c0a2ce0c
Move D&C SVD to official SVD module.
2014-10-29 11:29:33 +01:00
Benoit Steiner
debc97821c
Added support for tensor references
2014-10-28 23:10:13 -07:00
Christoph Hertzberg
1fa793cb97
Removed weird self assignment.
2014-10-24 13:19:19 +02:00
Benoit Steiner
f786897e4b
Added access to the unerlying raw data of a tnsor slice/chip whenever possible
2014-10-17 15:33:27 -07:00
Benoit Steiner
ae697b471c
Silenced a few compilation warnings
...
Generalized a TensorMap constructor
2014-10-16 14:52:50 -07:00
Benoit Steiner
94e47798f4
Fixed the return types of unary and binary expressions to properly handle the case where it is different from the input type (e.g. abs(complex<float>))
2014-10-16 10:41:07 -07:00
Benoit Steiner
99d75235a9
Misc improvements and cleanups
2014-10-13 17:02:09 -07:00
Benoit Steiner
4c70b0a762
Added support for patch extraction
2014-10-13 10:04:04 -07:00
Benoit Steiner
0219f8aed4
Added ability to print a tensor using an iostream.
2014-10-10 16:17:26 -07:00
Benoit Steiner
2ed1838aeb
Added support for tensor chips
2014-10-10 16:11:27 -07:00
Benoit Steiner
4b36c3591f
Fixed the tensor shuffling test
2014-10-10 15:43:21 -07:00
Benoit Steiner
a991f94c0e
Fixed the thread pool test
2014-10-10 15:20:37 -07:00
Benoit Steiner
767424af18
Improved the functors defined for standard reductions
...
Added a functor to encapsulate the generation of random numbers on cpu and gpu.
2014-10-09 15:36:23 -07:00
Gael Guennebaud
ccd70ba123
Various numerical fixes in D&C SVD: I cannot make it fail with double, but still need to tune for single precision, and carefully test with duplicated singular values
2014-10-09 23:29:01 +02:00
Gael Guennebaud
dbdd8b0883
D&C SVD: add scaling to avoid overflow, fix handling of fixed size matrices
2014-10-06 19:35:57 +02:00
Benoit Steiner
152f3218ac
Improved contraction test
2014-10-03 19:33:44 -07:00
Benoit Steiner
b7271dffb5
Generalized the gebp apis
2014-10-02 16:51:57 -07:00
Benoit Steiner
8b2afe33a1
Fixes for the forced evaluation of tensor expressions
...
More tests
2014-10-02 10:39:36 -07:00
Benoit Steiner
5cc23199be
More tests to validate the const-correctness of the tensor code.
2014-10-02 10:30:44 -07:00
Benoit Steiner
7caaf6453b
Added support for tensor reductions and concatenations
2014-10-01 20:38:22 -07:00
Benoit Steiner
1c236f4c9a
Added tests for tensors of const values and tensors of stringswwq::
2014-10-01 20:21:42 -07:00
Gael Guennebaud
842e31cf5c
Let KroneckerProduct exploits the recently introduced generic InnerIterator class.
2014-09-29 13:37:49 +02:00
Georg Drenkhahn
75e269c77b
Fixed warning on implicit integer conversion in test case code by using type VectorXd::Index instead of int.
2014-09-20 14:57:42 +02:00
Gael Guennebaud
03dd4dd91a
Unify unit test for BDC and Jacobi SVD. This reveals some numerical issues in BDCSVD.
2014-09-19 15:25:48 +02:00
Gael Guennebaud
e70506dd8f
Fix inner-stride of AlignedVector3
2014-09-18 22:46:46 +02:00
Gael Guennebaud
2ae20d558b
Update KroneckerProduct wrt evaluator changes
2014-09-18 22:08:49 +02:00
Gael Guennebaud
62bce6e5e6
Make MatrixFunction use nested_eval instead of nested
2014-09-18 17:31:17 +02:00
Gael Guennebaud
0ca43f7e9a
Remove deprecated code not used by evaluators
2014-09-18 15:15:27 +02:00
Benoit Steiner
10a79ca3a3
Merged latest updates from the Eigen trunk.
2014-09-15 09:18:16 -07:00
Gael Guennebaud
749b56f6af
merge with default branch
2014-09-14 17:34:54 +02:00
Benoit Steiner
74db22455a
Misc fixes.
2014-09-05 07:47:43 -07:00
Benoit Steiner
1abe4ed14c
Created more regression tests
2014-09-04 20:27:28 -07:00
Gael Guennebaud
1f398dfc82
Factorize *SVD::solve to SVDBase
2014-09-01 18:31:54 +02:00
Gael Guennebaud
b3a0365429
merge with default branch
2014-09-01 18:21:01 +02:00
Gael Guennebaud
eb39296028
Reafctoring in D&C SVD unsupported module: clean and merge the SVDBase class to Eigen/SVD, rm copy/pasted JacobiSVD.h file
2014-09-01 18:16:20 +02:00
Gael Guennebaud
72c4f8ca8f
Disable a few unit tests in unsupported
2014-09-01 17:35:58 +02:00
Benoit Steiner
36fffe48f7
Misc api improvements and cleanups
2014-08-23 14:35:41 -07:00
Benoit Steiner
3d298da269
Added support for broadcasting
2014-08-20 17:00:50 -07:00
Benoit Steiner
33c702c79f
Added support for fast integer divisions by a constant
...
Sped up tensor slicing by a factor of 3 by using these fast integer divisions.
2014-08-14 22:13:21 -07:00
Benoit Steiner
756292f8aa
Fixed compilation errors
2014-08-14 00:32:59 -07:00
Benoit Steiner
8c8db49331
Added a few regression tests
2014-08-14 00:25:22 -07:00
Benoit Steiner
16047c8d4a
Pulled in the latest changes from the Eigen trunk
2014-08-13 22:25:29 -07:00
Gael Guennebaud
60314beb38
Update reference value for testNistLanczos1 test
2014-09-02 17:35:11 +02:00
Gael Guennebaud
ff9bfc45f7
relax some LM unit tests
2014-09-02 17:10:17 +02:00
Benoit Steiner
1f371e78e6
Added a few tests to validate the behavior of the assignment operator.
2014-07-22 10:32:40 -07:00
Benoit Steiner
9b7a6f0122
Added tests for tensor slicing
2014-07-10 11:27:27 -07:00
Christoph Hertzberg
ef4a86d6b8
Fix trivial warnings in MPRealSupport
2014-07-18 16:39:58 +02:00
Gael Guennebaud
2cd38a6634
merge
2014-07-17 12:01:55 +02:00
Gael Guennebaud
40b74411e4
bug #842 : update mpreal copy (fix compilation with clang)
2014-07-17 11:59:51 +02:00
Christoph Hertzberg
14c8793a70
Remove unnecessary <bench/BenchTimer.h>include
2014-07-17 11:14:14 +02:00
Gael Guennebaud
424c3ad266
bug #842 : fix specialized product for mpreal
2014-07-17 09:41:33 +02:00
Jeff
b1169ce40c
Fixed index that would cause crash with two point, two derivative interpolation. Added static_cast.
2014-07-10 12:03:42 -06:00
Jeff
08c615f1e4
IndexArray is now a typename.
...
Changed interpolate with derivatives test to use VERIFY_IS_APPROX.
2014-06-25 19:02:57 -06:00
Jeff
e745a450de
Removed tabs and fixed indentation.
2014-06-23 20:18:16 -06:00
Jeff
b59f045c07
Using LU decomposition with complete pivoting for better accuracy.
2014-06-23 19:04:52 -06:00
Jeff
5dbbe6b400
Added Spline interpolation with derivatives.
2014-06-20 22:12:45 -06:00
Benoit Steiner
774c3c1e0a
Created additional unit tests for the tensor code and improved existing ones.
2014-06-13 10:20:28 -07:00