Benoit Steiner
75e19fc7ca
Marked the tensor constructors as EIGEN_DEVICE_FUNC: This makes it possible to call them from a CUDA kernel.
2015-12-14 15:12:55 -08:00
Gael Guennebaud
ca39b1546e
Merged in ebrevdo/eigen (pull request PR-148)
...
Add special functions to eigen: lgamma, erf, erfc.
2015-12-11 11:52:09 +01:00
Benoit Steiner
6af52a1227
Fixed a typo in the constructor of tensors of rank 5.
2015-12-10 23:31:12 -08:00
Benoit Steiner
2d8f2e4042
Made 2 tests compile without cxx11.
...
HdG: --
2015-12-10 23:20:04 -08:00
Benoit Steiner
8d28a161b2
Use the proper accessor to refer to the value of a scalar tensor
2015-12-10 22:53:56 -08:00
Benoit Steiner
8e00ea9a92
Fixed the coefficient accessors use for the 2d and 3d case when compiling without cxx11 support.
2015-12-10 22:45:10 -08:00
Benoit Steiner
9db8316c93
Updated the cxx11_tensor_custom_op to not require cxx11.
2015-12-10 20:53:44 -08:00
Benoit Steiner
4e324ca6ae
Updated the cxx11_tensor_assign test to make it compile without support for cxx11
2015-12-10 20:47:25 -08:00
Eugene Brevdo
fa4f933c0f
Add special functions to Eigen: lgamma, erf, erfc.
...
Includes CUDA support and unit tests.
2015-12-07 15:24:49 -08:00
Benoit Steiner
7dfe75f445
Fixed compilation warnings
2015-12-07 08:12:30 -08:00
Gael Guennebaud
ad3d68400e
Add matrix-free solver example
2015-12-07 12:33:38 +01:00
Gael Guennebaud
b37036afce
Implement wrapper for matrix-free iterative solvers
2015-12-07 12:23:22 +01:00
Benoit Steiner
f4ca8ad917
Use signed integers instead of unsigned ones more consistently in the codebase.
2015-12-04 18:14:16 -08:00
Benoit Steiner
490d26e4c1
Use integers instead of std::size_t to encode the number of dimensions in the Tensor class since most of the code currently already use integers.
2015-12-04 10:15:11 -08:00
Benoit Steiner
d20efc974d
Made it possible to use the sigmoid functor within a CUDA kernel.
2015-12-04 09:38:15 -08:00
Benoit Steiner
029052d276
Deleted redundant code
2015-12-03 17:08:47 -08:00
Gael Guennebaud
fd727249ad
Update ADOL-C support.
2015-11-30 16:00:22 +01:00
Gael Guennebaud
da46b1ed54
bug #1112 : fix compilation on exotic architectures
2015-11-27 15:57:18 +01:00
Mark Borgerding
7ddcf97da7
added scalar_sign_op (both real,complex)
2015-11-24 17:15:07 -05:00
Benoit Steiner
44848ac39b
Fixed a bug in TensorArgMax.h
2015-11-23 15:58:47 -08:00
Benoit Steiner
547a8608e5
Fixed the implementation of Eigen::internal::count_leading_zeros for MSVC.
...
Also updated the code to silence bogux warnings generated by nvcc when compilining this function.
2015-11-23 12:17:45 -08:00
Benoit Steiner
562078780a
Don't create more cuda blocks than necessary
2015-11-23 11:00:10 -08:00
Benoit Steiner
df31ca3b9e
Made it possible to refer t oa GPUDevice from code compile with a regular C++ compiler
2015-11-23 10:03:53 -08:00
Benoit Steiner
1e04059012
Deleted unused variable.
2015-11-23 08:36:54 -08:00
Benoit Steiner
9fa65d3838
Split TensorDeviceType.h in 3 files to make it more manageable
2015-11-20 17:42:50 -08:00
Benoit Steiner
a367804856
Added option to force the usage of the Eigen array class instead of the std::array class.
2015-11-20 12:41:40 -08:00
Benoit Steiner
86486eee2d
Pulled latest updates from trunk
2015-11-20 11:10:37 -08:00
Benoit Steiner
383d1cc2ed
Added proper support for fast 64bit integer division on CUDA
2015-11-20 11:09:46 -08:00
Benoit Steiner
0ad7c7b1ad
Fixed another clang compilation warning
2015-11-19 15:52:51 -08:00
Benoit Steiner
66ff9b2c6c
Fixed compilation warning generated by clang
2015-11-19 15:40:32 -08:00
Benoit Steiner
f37a5f1c53
Fixed compilation error triggered by nvcc
2015-11-19 14:34:26 -08:00
Benoit Steiner
04f1284f9a
Shard the uint128 test
2015-11-19 14:08:08 -08:00
Benoit Steiner
e2859c6b71
Cleanup the integer division test
2015-11-19 14:07:50 -08:00
Benoit Steiner
f8df393165
Added support for 128bit integers on CUDA devices.
2015-11-19 13:57:27 -08:00
Benoit Steiner
1dd444ea71
Avoid using the version of TensorIntDiv optimized for 32-bit integers when the divisor can be equal to one since it isn't supported.
2015-11-18 11:37:58 -08:00
Benoit Steiner
f1fbd74db9
Added sanity check
2015-11-13 09:07:27 -08:00
Benoit Steiner
7815b84be4
Fixed a compilation warning
2015-11-12 20:16:59 -08:00
Benoit Steiner
10a91930cc
Fixed a compilation warning triggered by nvcc
2015-11-12 20:10:52 -08:00
Benoit Steiner
ed4b37de02
Fixed a few compilation warnings
2015-11-12 20:08:01 -08:00
Benoit Steiner
b69248fa2a
Added a couple of missing EIGEN_DEVICE_FUNC
2015-11-12 20:01:50 -08:00
Benoit Steiner
0aaa5941df
Silenced some compilation warnings triggered by nvcc
2015-11-12 19:11:43 -08:00
Benoit Steiner
2c73633b28
Fixed a few more typos
2015-11-12 18:39:19 -08:00
Benoit Steiner
be08e82953
Fixed typos
2015-11-12 18:37:40 -08:00
Benoit Steiner
150c12e138
Completed the IndexList rewrite
2015-11-12 18:11:56 -08:00
Benoit Steiner
8037826367
Simplified more of the IndexList code.
2015-11-12 17:19:45 -08:00
Benoit Steiner
e9ecfad796
Started to make the IndexList code compile by more compilers
2015-11-12 16:41:14 -08:00
Benoit Steiner
7a1316fcc5
Fixed compilation error with xcode.
2015-11-12 11:05:54 -08:00
Benoit Steiner
737d237722
Made it possible to run some of the CXXMeta functions on a CUDA device.
2015-11-12 09:02:59 -08:00
Benoit Steiner
1e072424e8
Moved the array code into it's own file.
2015-11-12 08:57:04 -08:00
Benoit Steiner
aa5f1ca714
gen_numeric_list takes a size_t, not a int
2015-11-12 08:30:10 -08:00
Benoit Steiner
9fa10fe52d
Don't use std::array when compiling with nvcc since nvidia doesn't support the use of STL containers on GPU.
2015-11-11 15:38:30 -08:00
Benoit Steiner
c587293e48
Fixed a compilation warning
2015-11-11 15:35:12 -08:00
Benoit Steiner
7f1c29fb0c
Make it possible for a vectorized tensor expression to be executed in a CUDA kernel.
2015-11-11 15:22:50 -08:00
Benoit Steiner
99f4778506
Disable SFINAE when compiling with nvcc
2015-11-11 15:04:58 -08:00
Benoit Steiner
5cb18e5b5e
Fixed CUDA compilation errors
2015-11-11 14:36:33 -08:00
Benoit Steiner
228edfe616
Use Eigen::NumTraits instead of std::numeric_limits
2015-11-11 09:26:23 -08:00
Benoit Steiner
20e2ab1121
Fixed another compilation warning
2015-12-07 16:17:57 -08:00
Benoit Steiner
d573efe303
Code cleanup
2015-11-06 14:54:28 -08:00
Benoit Steiner
9fa283339f
Silenced a compilation warning
2015-11-06 11:44:22 -08:00
Benoit Steiner
53432a17b2
Added static assertions to avoid misuses of padding, broadcasting and concatenation ops.
2015-11-06 10:26:19 -08:00
Benoit Steiner
6857a35a11
Fixed typos
2015-11-06 09:42:05 -08:00
Benoit Steiner
33cbdc2d15
Added more missing EIGEN_DEVICE_FUNC
2015-11-06 09:29:59 -08:00
Benoit Steiner
ed1962b464
Reimplement the tensor comparison operators by using the scalar_cmp_op functors. This makes them more cuda friendly.
2015-11-06 09:18:43 -08:00
Benoit Steiner
29038b982d
Added support for modulo operation
2015-11-05 19:39:48 -08:00
Benoit Steiner
fbcf8cc8c1
Pulled latest updates from trunk
2015-11-05 14:30:02 -08:00
Benoit Steiner
0d15ad8019
Updated the regressions tests that cover full reductions
2015-11-05 14:22:30 -08:00
Benoit Steiner
c75a19f815
Misc fixes to full reductions
2015-11-05 14:21:20 -08:00
Benoit Steiner
ec5a81b45a
Fixed a bug in the extraction of sizes of fixed sized tensors of rank 0
2015-11-05 13:39:48 -08:00
Gael Guennebaud
589b839ad0
Add unit test for Hessian via AutoDiffScalar
2015-11-05 14:54:05 +01:00
Gael Guennebaud
9ceaa8e445
bug #1063 : nest AutoDiffScalar by value to avoid dead references
2015-11-05 13:54:26 +01:00
Benoit Steiner
beedd9630d
Updated the reduction code so that full reductions now return a tensor of rank 0.
2015-11-04 13:57:36 -08:00
Benoit Steiner
6a02c2a85d
Fixed a compilation warning
2015-10-29 20:21:29 -07:00
Benoit Steiner
ca12d4c3b3
Pulled latest updates from trunk
2015-10-29 17:57:48 -07:00
Benoit Steiner
31bdafac67
Added a few tests to cover rank-0 tensors
2015-10-29 17:56:48 -07:00
Benoit Steiner
ce19e38c1f
Added support for tensor maps of rank 0.
2015-10-29 17:49:04 -07:00
Benoit Steiner
3785c69294
Added support for fixed sized tensors of rank 0
2015-10-29 17:31:03 -07:00
Benoit Steiner
0d7a23d34e
Extended the reduction code so that reducing an empty set returns the neural element for the operation
2015-10-29 17:29:49 -07:00
Benoit Steiner
1b0685d09a
Added support for rank-0 tensors
2015-10-29 17:27:38 -07:00
Benoit Steiner
c444a0a8c3
Consistently use the same index type in the fft codebase.
2015-10-29 16:39:47 -07:00
Benoit Steiner
09ea3a7acd
Silenced a few more compilation warnings
2015-10-29 16:22:52 -07:00
Benoit Steiner
0974a57910
Silenced compiler warning
2015-10-29 15:00:06 -07:00
Gael Guennebaud
77ff3386b7
Refactoring of the cost model:
...
- Dynamic is now an invalid value
- introduce a HugeCost constant to be used for runtime-cost values or arbitrarily huge cost
- add sanity checks for cost values: must be >=0 and not too large
This change provides several benefits:
- it fixes shortcoming is some cost computation where the Dynamic case was not properly handled.
- it simplifies cost computation logic, and should avoid future similar shortcomings.
- it allows to distinguish between different level of dynamic/huge/infinite cost
- it should enable further simplifications in the computation of costs (save compilation time)
2015-10-28 11:42:14 +01:00
Gael Guennebaud
d4cf436cb1
Enable mpreal unit test for C++11 compiler only
2015-10-27 17:35:54 +01:00
Benoit Steiner
1c8312c811
Started to add support for tensors of rank 0
2015-10-26 14:29:26 -07:00
Benoit Steiner
1f4c98abb1
Fixed compilation warning
2015-10-26 12:42:55 -07:00
Benoit Steiner
9dc236bc83
Fixed compilation warning
2015-10-26 12:41:48 -07:00
Benoit Steiner
9f721384e0
Added support for empty dimensions
2015-10-26 11:21:27 -07:00
Benoit Steiner
a3e144727c
Fixed compilation warning
2015-10-26 10:48:11 -07:00
Benoit Steiner
f8e7b9590d
Fixed compilation error triggered by gcc 4.7
2015-10-26 10:47:37 -07:00
Gael Guennebaud
a5324a131f
bug #1092 : fix iterative solver ctors for expressions as input
2015-10-26 16:16:24 +01:00
Gael Guennebaud
af2e25d482
Merged in infinitei/eigen (pull request PR-140)
...
bug #1097 Added ArpackSupport to cmake install target
2015-10-26 15:31:39 +01:00
Abhijit Kundu
0ed41bdefa
ArpackSupport was missing here also.
2015-10-16 18:21:02 -07:00
Abhijit Kundu
1127ca8586
Added ArpackSupport to cmake install target
2015-10-16 16:41:33 -07:00
Benoit Steiner
de1e9f29f4
Updated the custom indexing code: we can now use any container that provides the [] operator to index a tensor. Added unit tests to validate the use of std::map and a few more types as valid custom index containers
2015-10-15 14:58:49 -07:00
Benoit Steiner
6585efc553
Tightened the definition of isOfNormalIndex to take into account integer types in addition to arrays of indices
...
Only compile the custom index code when EIGEN_HAS_SFINAE is defined. For the time beeing, EIGEN_HAS_SFINAE is a synonym for EIGEN_HAS_VARIADIC_TEMPLATES, but this might evolve in the future.
Moved some code around.
2015-10-14 09:31:37 -07:00
Gabriel Nützi
fc7478c04d
name changes 2
...
user: Gabriel Nützi <gnuetzi@gmx.ch>
branch 'default'
changed unsupported/Eigen/CXX11/src/Tensor/Tensor.h
changed unsupported/Eigen/CXX11/src/Tensor/TensorMeta.h
2015-10-09 19:10:08 +02:00
Gabriel Nützi
7b34834f64
name changes
...
user: Gabriel Nützi <gnuetzi@gmx.ch>
branch 'default'
changed unsupported/Eigen/CXX11/src/Tensor/Tensor.h
2015-10-09 19:08:14 +02:00
Gabriel Nützi
6edae2d30d
added CustomIndex capability only to Tensor and not yet to TensorBase.
...
using Sfinae and is_base_of to select correct template which converts to array<Index,NumIndices>
user: Gabriel Nützi <gnuetzi@gmx.ch>
branch 'default'
added unsupported/Eigen/CXX11/src/Tensor/TensorMetaMacros.h
added unsupported/test/cxx11_tensor_customIndex.cpp
changed unsupported/Eigen/CXX11/Tensor
changed unsupported/Eigen/CXX11/src/Tensor/Tensor.h
changed unsupported/Eigen/CXX11/src/Tensor/TensorMeta.h
changed unsupported/test/CMakeLists.txt
2015-10-09 18:52:48 +02:00
Gael Guennebaud
ac22b66f1c
Fix macro issues
2015-10-13 10:18:09 +02:00
Gael Guennebaud
3e32f6b554
update mpreal.h
2015-10-13 09:58:54 +02:00
Gael Guennebaud
186ec1437c
Cleanup EIGEN_SPARSE_PUBLIC_INTERFACE, it is now a simple alias to EIGEN_GENERIC_PUBLIC_INTERFACE
2015-10-08 22:06:49 +02:00
Gael Guennebaud
1b148d9e2e
Move IncompleteCholesky to official modules
2015-10-08 11:32:46 +02:00
Gael Guennebaud
632e7705b1
Improve doc of IncompleteCholesky
2015-10-08 10:54:36 +02:00
Gael Guennebaud
131db3c552
Fix return by value versus ref typo in IncompleteCholesky
2015-10-07 16:37:46 +02:00
Gael Guennebaud
752a0e5339
bug #1076 : fix scaling in IncompleteCholesky, improve doc, add read-only access to the different factors, remove debugging code.
2015-10-06 13:25:45 +02:00
Gael Guennebaud
ddb5650530
bug #1070 : propagate last three Matrix template arguments for NumTraits<AutoDiffScalar<>>::Real
2015-09-28 15:07:03 +02:00
Benoit Steiner
13aee4463e
Cleaned up a test
2015-09-18 09:42:08 -07:00
Benoit Steiner
58a6453d48
Fixed compilation warning
2015-09-17 10:18:49 -07:00
Benoit Steiner
31afdcb4c2
Fix return type for TensorEvaluator<TensorSlicingOp>::data
2015-09-17 09:40:21 -07:00
Benoit Steiner
84e0c27b61
Fixed a compilation warning
2015-09-08 17:05:35 -07:00
Benoit Steiner
05f2f94f2b
Fixed a compilation warning
2015-09-08 17:04:03 -07:00
Gael Guennebaud
3942db9d7c
Use inline versus static free functions.
2015-09-03 13:42:54 +02:00
Benoit Steiner
56983f6d43
Fixed compilation warning
2015-10-23 12:03:42 -07:00
Benoit Steiner
57857775b4
Added support for arrays of size 0
2015-10-23 10:20:51 -07:00
Benoit Steiner
c40c2ceb27
Reordered the code of fft constructor to prevent compilation warnings
2015-10-23 09:38:19 -07:00
Benoit Steiner
a586fdaa91
Reworked the tensor contraction mapper code to make it compile on Android
2015-10-23 09:33:41 -07:00
Benoit Steiner
29c3b7513e
Pulled latest updates from trunk
2015-10-23 09:16:14 -07:00
Benoit Steiner
9ea39ce13c
Refined the #ifdef __CUDACC__ guard to ensure that when trying to compile gpu code with a non cuda compiler results in a linking error instead of bogus code.
2015-10-23 09:15:34 -07:00
Gael Guennebaud
c244081490
disable usage of INTMAX_T
2015-10-23 14:48:54 +02:00
Gael Guennebaud
0905ed5390
remove useless cstdint header
2015-10-23 14:41:25 +02:00
Benoit Steiner
ac99b49249
Added missing glue logic
2015-10-22 16:54:21 -07:00
Benoit Steiner
2dd9446613
Added mapping between a specific device and the corresponding packet type
2015-10-22 16:53:36 -07:00
Benoit Steiner
2495e2479f
Added tests for the fft code
2015-10-22 16:52:55 -07:00
Benoit Steiner
a147c62998
Added support for fourier transforms (code courtesy of thucjw@gmail.com)
2015-10-22 16:51:30 -07:00
Benoit Steiner
825146c8fd
Fixed incorrect expected value
2015-10-22 11:56:00 -07:00
Benoit Steiner
4cf7da63de
Added a constructor to simplify the construction of tensormap from tensor
2015-10-22 11:48:02 -07:00
Benoit Steiner
b178cc3479
Added some syntactic sugar to make it simpler to compare a tensor to a scalar.
2015-10-21 11:28:28 -07:00
Benoit Steiner
0af63493fd
Disable SFINAE for versions of gcc older than 4.8
2015-10-20 11:53:30 -07:00
Benoit Steiner
73b8e719ae
Removed bogus assertion
2015-10-20 11:42:34 -07:00
Benoit Steiner
eaf4b98180
Added support for boolean reductions (ie 'and' & 'or' reductions)
2015-10-20 11:41:22 -07:00
Benoit Steiner
f5c1587e4e
Fixed a bug in the tensor conversion op
2015-10-20 11:37:44 -07:00
Christoph Hertzberg
5ad7981f73
Use full packet size for Dynamic-sized objects (otherwise, the unalignedcount unit test fails with AVX enabled)
2015-09-02 22:51:43 +02:00
Gael Guennebaud
51455824ea
Fix AlignedVector3 wrt previous change
2015-09-02 21:51:58 +02:00
Benoit Steiner
f41831e445
Added support for argmax/argmin
2015-08-31 08:18:53 -07:00
Benoit Steiner
2ab603316a
Use numext::mini/numext::maxi instead of std::min/std::max in the tensor code
2015-08-28 08:14:15 -07:00
Christoph Hertzberg
1bdd06a199
Fix some trivial warnings
2015-08-19 21:38:18 +02:00
Christoph Hertzberg
0721690dbb
Use standard include syntax in Tensor module (<> for include-path and "" for relative path)
2015-08-18 14:34:00 +02:00
Gael Guennebaud
dc2c103b3b
merge
2015-08-16 14:22:02 +02:00
Christoph Hertzberg
d6a4805fdf
Protect further isnan/isfinite/isinf calls
2015-08-16 14:00:02 +02:00
Gael Guennebaud
0d5e673baa
Fix Tensor module wrt nullary functor recent change
2015-08-09 21:20:24 +02:00
Gael Guennebaud
7e0d7a76b8
Remove dense nested loops in IncompleteCholesky
2015-08-04 18:01:38 +02:00
Gael Guennebaud
e31fc50280
Numerous fixes for IncompleteCholesky. Still have to make it fully exploit the sparse structure of the L factor, and improve robustness to illconditionned problems.
2015-08-04 16:16:02 +02:00
Gael Guennebaud
9a4713e505
Add a unit test for IncompleteCholesky
2015-08-04 16:14:06 +02:00
Benoit Steiner
cbce0e3b12
Fixed compilation warning
2015-08-03 21:52:29 -07:00
Benoit Steiner
a5dc49e7e8
Fixed 2 compilation warnings generated by llvm
2015-07-29 15:06:08 -07:00
Benoit Steiner
e1d28b7ea7
Added a test for shuffling
2015-07-29 15:01:21 -07:00
Benoit Steiner
0570594f2c
Fixed a few compilation warnings triggered by clang
2015-07-29 11:48:38 -07:00
Benoit Steiner
099597406f
Simplified and generalized the DividerTraits code
2015-07-29 10:02:42 -07:00
Gael Guennebaud
6db3a557f4
Add missing specialization of struct DividerTraits<long>
2015-07-29 11:38:53 +02:00
Gael Guennebaud
aec4814370
Many files were missing in previous changeset.
2015-07-29 11:11:23 +02:00
Benoit Steiner
b9db19aec4
Pulled latest updates from trunk.
2015-07-27 09:39:57 -07:00
Benoit Steiner
f84417d97b
Removed an incorrect assertion.
2015-07-27 09:25:22 -07:00
Godeffroy Valet
2195822df6
Allowed tensor contraction operation with an empty array of dimension pairs, which performs a tensor product.
2015-07-25 11:58:36 +02:00
Benoit Steiner
f6282e451a
Fixed a typo in an assertion.
2015-07-24 17:35:47 -07:00
Benoit Steiner
4200bdec24
Extended the range of value inputs for TensorIntDiv to support tensors with more than 4 billion elements.
2015-07-22 17:02:30 -07:00
Benoit Steiner
0dda72316f
The eigen_check macro doesn't exist anymore: use assert instead
2015-07-21 17:34:15 -07:00
Gael Guennebaud
d3e5db9a80
add regression unit test for previous changeset
2015-07-21 22:23:17 +02:00
Valentin Roussellet
5e635f9ca1
AlignedVector3 accepts implicit conversions from more operators.
2015-07-21 16:42:52 +00:00
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
e94f9eb637
Fixed a const correctness issue in TensorLayoutSwap
2015-07-17 15:44:26 -07:00
Benoit Steiner
943035e5bd
Pulled latest updates from trunk
2015-07-17 09:42:45 -07:00
Benoit Steiner
06a22ca5bd
Added support for sigmoid function to the tensor module
2015-07-17 09:29:00 -07:00
Nicolas Mellado
3275eddc24
Add const getters for LM parameters
2015-07-17 09:11:49 +02: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
7a243959b4
Define EIGEN_HAS_INDEX_LIST whenever the class is defined. This makes it easier to support compilers that are cxx11 compliant and compilers that aren't.
2015-07-16 13:14:18 -07:00
Benoit Steiner
b756f6af5e
Added missing APIs to the Eigen::Sizes class
2015-07-16 12:14:18 -07:00
Benoit Steiner
05787f8367
Added support for tensor inflation.
2015-07-16 09:04:05 -07:00
Benoit Steiner
b900fe47d5
Avoid relying on a default value for the Vectorizable template parameter of the EvalRange functor
2015-07-15 17:17:04 -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
e892524efe
Added support for multi gpu configuration to the GpuDevice class
2015-07-15 12:38:34 -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
6de6fa9483
Use NumTraits<T>::RequireInitialization instead of internal::is_arithmetic<T>::value to check whether it's possible to bypass the type constructor in the tensor code.
2015-07-07 15:23:56 -07:00
Benoit Steiner
a93af65938
Improved and cleaned up the 2d patch extraction code
2015-07-07 08:52:14 -07:00
Benoit Steiner
3f2101b03b
Use numext::swap instead of std::swap
2015-07-06 17:02:29 -07:00
Benoit Steiner
0485a2468d
use Eigen smart_copy instead of std::copy
2015-07-06 17:01:51 -07:00
Benoit Steiner
ebdacfc5ea
Fixed a compilation warning generated by clang
2015-07-06 15:03:11 -07:00
Benoit Steiner
81f9e968fd
Only attempt to use the texture path on GPUs when it's supported by CUDA
2015-07-06 13:32:38 -07:00
Benoit Steiner
864318e508
Misc small fixes to the tensor slicing code.
2015-07-06 11:45:56 -07:00
Benoit Steiner
8f1d547c92
Added a default value for the cuda stream in the GpuDevice constructor
2015-07-01 18:32:18 -07:00
Benoit Steiner
1e911b276c
Misc improvements and optimizations
2015-07-01 13:59:11 -07:00
Benoit Steiner
4ed213f97b
Improved a previous fix
2015-07-01 13:06:30 -07:00
Benoit Steiner
56e155dd60
Fixed a couple of mistakes in the previous commit.
2015-07-01 12:40:27 -07:00
Benoit Steiner
925d0d375a
Enabled the vectorized evaluation of several tensor expressions that was previously disabled by mistake
2015-07-01 11:32:04 -07:00
Benoit Steiner
6021b68d8b
Silenced a compilation warning
2015-06-30 15:42:25 -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
f587075987
Made ThreadPoolDevice inherit from a new pure abstract ThreadPoolInterface class: this enables users to leverage their existing threadpool when using eigen tensors.
2015-06-30 14:21:24 -07:00
Benoit Steiner
28b36632ec
Turned Eigen::array::size into a function to make the code compatible with std::array
2015-06-30 13:23:05 -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
7d41e97fa9
Silenced a number of compilation warnings
2015-06-29 14:47:40 -07:00
Benoit Steiner
fffe63045c
Added a test for full reductions on GPU
2015-06-29 14:10:32 -07:00
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