Gael Guennebaud
846b227bb7
Get rid of class internal::nested<> (still have to updated Tensor module)
2015-06-19 17:56:39 +02:00
Benoit Steiner
ab5db86fe9
Fixed merge conflict
2015-06-16 19:52:20 -07:00
Benoit Steiner
ea160a898c
Pulled latest updates from trunk
2015-06-16 19:46:23 -07:00
Benoit Steiner
367794e668
Fixed compilation warnings triggered by clang
2015-06-16 19:43:49 -07:00
Gael Guennebaud
9ab8ac5c8b
Fix compilation in TensorImagePatch
2015-06-16 14:50:08 +02:00
Gael Guennebaud
38874b1651
Fix shadow warnings in Tensor module
2015-06-16 14:43:46 +02:00
Benoit Steiner
ea1190486f
Fixed a compilation error triggered by nvcc 7
2015-05-28 11:57:51 -07:00
Benoit Steiner
0e5fed74e7
Worked around some constexpr related bugs in nvcc 7
2015-05-28 10:14:38 -07:00
Benoit Steiner
f13b3d4433
Added missing include files
2015-05-28 07:57:28 -07:00
Benoit Steiner
abec18bae0
Fixed potential compilation error
2015-05-26 10:11:15 -07:00
Benoit Steiner
9df186c140
Added a few more missing EIGEN_DEVICE_FUNC statements
2015-05-26 09:47:48 -07:00
Benoit Steiner
466bcc589e
Added a few missing EIGEN_DEVICE_FUNC statements
2015-05-26 09:37:23 -07: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
2451679951
Avoid using the cuda memcpy for small tensor slices since the memcpy kernel is very expensive to launch
2015-05-19 15:19:01 -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
Benoit Steiner
fd1d4bd86c
Silenced a few compilation warnings
2015-04-22 16:16:15 -07: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
8838ed39f4
Added support for non-deterministic random number generation on GPU
2015-04-22 09:14:38 -07:00
Benoit Steiner
dfa991cbae
Make sure that the copy constructor of the evaluator is always called before launching the evaluation of a tensor expression on a cuda device.
2015-04-21 16:15:45 -07:00
Benoit Steiner
e709488361
Silenced a few compilation warnings
2015-04-20 17:39:45 -07:00
Benoit Steiner
10a1f81822
Sped up the assignment of a tensor to a tensor slice, as well as the assigment of a constant slice to a tensor
2015-04-20 17:34:11 -07:00
Benoit Steiner
43eb2ca6e1
Improved the tensor random number generators:
...
* Use a mersenne twister whenebver possible instead of the default entropy source since the default one isn't very good at all.
* Added the ability to seed the generators with a time based seed to make them non-deterministic.
2015-04-20 09:24:09 -07:00
Benoit Steiner
70bc3b0668
Silenced a warning in the tensor code
2015-04-19 12:38:00 -07:00
Benoit Steiner
3220eb2b93
Fixed some compilation warnings
2015-04-19 12:36:35 -07:00
Benoit Steiner
3b429b71e6
Fixed compilation warning triggered by gcc 4.7
2015-04-18 13:41:06 -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
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
03a0df2010
Fixed some compilation warnings triggered by pre-cxx11 comoilers
2015-04-01 22:51:33 -07:00
Benoit Steiner
b8b7807269
Fixed some compilation warning triggered by the cxx11 emulation code
2015-04-01 21:48:18 -07:00
Benoit Steiner
383b6dfafe
Fixed 2 typos
2015-04-01 16:44:36 -07:00
Benoit Steiner
68d4afe985
Added support for convolution of tensors laid out in RowMajor mode
2015-03-31 09:07:09 -07:00
Benoit Steiner
f873686602
Added documentation for the convolution operation
2015-03-31 08:27:23 -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
71950f02e5
Deleted unnecessary semicolons
2015-03-30 14:49:10 -07:00
Benoit Steiner
4df8b5a75e
Avoid making an unecessary copy of the tensor expression when evaluating it on a GPU device
2015-03-25 14:36:07 -07:00
Benoit Steiner
b3343bfdae
Fixed the vectorized implementation of the Tensor select() method
2015-03-25 13:25:53 -07:00
Benoit Steiner
ccf290a65c
Cleaned up the TensorDevice code a little bit.
2015-03-25 12:37:38 -07:00
Benoit Steiner
d3f7915aeb
Pulled latest update from the eigen main codebase
2015-03-24 13:12:14 -07:00
Benoit Steiner
a6a628ca6b
Added the -= operator to the device classes
2015-03-19 23:22:19 -07:00
Benoit Steiner
e134226a03
Fixed a bug in the handling of packets by the MeanReducer
2015-03-19 23:11:42 -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
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
b0f2b6f297
Updated the tensor type casting code as follow: in the case where TgtRatio < SrcRatio, disable the vectorization of the source expression unless is has direct-access.
2015-03-02 10:11:40 -08:00
Benoit Steiner
d9cb604a5d
Disabled the use of aligned memory loads when converting a tensor from float to doubles since alignment can't always be guaranteed.
2015-03-02 09:41:36 -08:00
Benoit Steiner
ae73859a0a
Fixed incorrect assertion
2015-02-28 08:02:02 -08:00
Benoit Steiner
bb483313f6
Fixed another batch of compilation warnings
2015-02-28 02:32:46 -08:00
Benoit Steiner
1a7b84dc75
Silenced a few compilation warnings
2015-02-28 01:45:15 -08:00