| Commit message (Collapse) | Author | Age |
| |
|
| |
|
|
|
|
| |
tensor_broadcast_sycl on GPU; adding get_sycl_supported_devices() on syclDevice.h.
|
| |
|
| |
|
| |
|
|
|
|
| |
Unsupported/Eigen/CXX11/Tensor; added TensorReduction for sycl (full reduction and partial reduction); added TensorReduction test case for sycl (full reduction and partial reduction); fixed the tile size on TensorSyclRun.h based on the device max work group size;
|
| |
|
|\ |
|
| | |
|
|\| |
|
| | |
|
| | |
|
|/ |
|
|
|
|
| |
currently in unsupported/.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
TernaryFunctors and their executors allow operations on 3-tuples of inputs.
API fully implemented for Arrays and Tensors based on binary functors.
Ported the cephes betainc function (regularized incomplete beta
integral) to Eigen, with support for CPU and GPU, floats, doubles, and
half types.
Added unit tests in array.cpp and cxx11_tensor_cuda.cu
Collapsed revision
* Merged helper methods for betainc across floats and doubles.
* Added TensorGlobalFunctions with betainc(). Removed betainc() from TensorBase.
* Clean up CwiseTernaryOp checks, change igamma_helper to cephes_helper.
* betainc: merge incbcf and incbd into incbeta_cfe. and more cleanup.
* Update TernaryOp and SpecialFunctions (betainc) based on review comments.
|
|
|
|
|
| |
This is the initial implementation a generic scan operation.
Based on this, cumsum and cumprod method have been added to TensorBase.
|
|
|
|
| |
dependence in TensorCostModel.h.
|
|
|
|
| |
Move some scalar functors from TensorFunctors. to Eigen core.
|
| |
|
| |
|
|\
| |
| |
| | |
Eigen Tensor cost model part 1.
|
| | |
|
|/
|
|
| |
estimate the cost of evaluating tensor expressions.
|
|
|
|
| |
thread synchronization overhead
|
| |
|
|
|
|
| |
cuda initialization errors
|
|
|
|
| |
blocking strategy.
|
|
|
|
| |
manageable.
|
| |
|
|
|
|
| |
C++ compiler
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
| |
relative path)
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
'generator'. This simplifies the creation of constant tensors initialized using specific regular patterns.
Created a gaussian window generator as a first use case.
|
|\ |
|
| | |
|
|\| |
|
| | |
|