aboutsummaryrefslogtreecommitdiffhomepage
path: root/unsupported/Eigen/CXX11/src/Tensor/TensorStorage.h
Commit message (Collapse)AuthorAge
* Re-implement move assignments.Gravatar Antonio Sanchez2021-03-10
| | | | | | | | | | | | | | | The original swap approach leads to potential undefined behavior (reading uninitialized memory) and results in unnecessary copying of data for static storage. Here we pass down the move assignment to the underlying storage. Static storage does a one-way copy, dynamic storage does a swap. Modified the tests to no longer read from the moved-from matrix/tensor, since that can lead to UB. Added a test to ensure we do not access uninitialized memory in a move. Fixes: #2119
* Replace call to FixedDimensions() with a singleton instance ofGravatar Turing Eret2020-12-16
| | | | FixedDimensions.
* TensorStorage with FixedDimensions now has zero instance memory overhead.Gravatar Turing Eret2020-12-14
| | | | | | | Removed m_dimension as instance member of TensorStorage with FixedDimensions and instead use the template parameter. This means that the sizeof a pure fixed-size storage is exactly equal to the data it is storing.
* Rollback or PR-746 and partial rollback of ↵Gravatar Rasmus Munk Larsen2019-11-05
| | | | | | | | https://bitbucket.org/eigen/eigen/commits/668ab3fc474e54c7919eda4fbaf11f3a99246494 . std::array is still not supported in CUDA device code on Windows.
* Remove internal::smart_copy and replace with std::copyGravatar Eugene Zhulenev2019-10-29
|
* Made the TensorStorage class compile with clang 3.9Gravatar Benoit Steiner2017-02-28
|
* Silent warning.Gravatar Gael Guennebaud2017-02-20
|
* Fix compilation.Gravatar Gael Guennebaud2017-02-18
|
* Make EIGEN_HAS_VARIADIC_TEMPLATES user configurableGravatar Gael Guennebaud2016-05-20
|
* Fixed clang comilation warningsGravatar Benoit Steiner2016-02-10
|
* Fixed a few compilation warningsGravatar Benoit Steiner2016-01-31
|
* Deleted an invalid assertion that prevented the assignment of empty tensors.Gravatar Benoit Steiner2016-01-27
|
* Use signed integers instead of unsigned ones more consistently in the codebase.Gravatar Benoit Steiner2015-12-04
|
* Started to add support for tensors of rank 0Gravatar Benoit Steiner2015-10-26
|
* Many files were missing in previous changeset.Gravatar Gael Guennebaud2015-07-29
|
* Use numext::swap instead of std::swapGravatar Benoit Steiner2015-07-06
|
* Made the index type a template parameter of the tensor class instead of ↵Gravatar Benoit Steiner2015-03-30
| | | | encoding it in the options.
* Silenced a few compilation warningsGravatar Benoit Steiner2015-02-28
|
* Fixed compilation warningsGravatar Benoit Steiner2015-02-27
|
* Added support for 32bit index on a per tensor/tensor expression. This ↵Gravatar Benoit Steiner2015-02-27
| | | | 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.
* Marked a few functions as EIGEN_DEVICE_FUNC to enable the use of tensors in ↵Gravatar Benoit Steiner2015-02-10
| | | | cuda kernels.
* Improved the resizing of tensorsGravatar Benoit Steiner2015-01-14
|
* Misc improvements and cleanupsGravatar Benoit Steiner2014-10-13
|
* Made sure that the data stored in fixed sized tensor is aligned.Gravatar Benoit Steiner2014-07-25
|
* Added support for tensor contractionsGravatar Benoit Steiner2014-06-04
| | | | | Updated expression evaluation mechanism to also compute the size of the tensor result Misc fixes and improvements.
* Vectorized the evaluation of tensor expression (using SSE, AVX, NEON, ...)Gravatar Benoit Steiner2014-05-16
| | | | | Added the ability to parallelize the evaluation of a tensor expression over multiple cpu cores. Added the ability to offload the evaluation of a tensor expression to a GPU.
* Added support for fixed sized tensors.Gravatar Benoit Steiner2014-05-06
| | | | Improved support for tensor expressions.
* Extended support for Tensors:Gravatar Benoit Steiner2014-04-28
| | | | | | * Added ability to map a region of the memory to a tensor * Added basic support for unary and binary coefficient wise expressions, such as addition or square root * Provided an emulation layer to make it possible to compile the code with compilers (such as nvcc) that don't support cxx11.
* C++11/Tensor: Fix copyright headersGravatar Christian Seiler2013-11-16
|
* CXX11/Tensor: add simple initial tensor implementationGravatar Christian Seiler2013-11-14
This commit adds an initial implementation of a class template Tensor that allows for the storage of objects with more than two indices. Currently, only storing data and setting the object to zero for POD data types are implemented.