aboutsummaryrefslogtreecommitdiffhomepage
path: root/unsupported
Commit message (Collapse)AuthorAge
* Simplify handling and non-splitted tests and include split_test_helper.h ↵Gravatar Gael Guennebaud2018-07-16
| | | | instead of re-generating it. This also allows us to modify it without breaking existing build folder.
* Fix usage of EIGEN_SPLIT_LARGE_TESTS=ON: some unit tests, such as ↵Gravatar Gael Guennebaud2018-07-16
| | | | indexed_view have to be split unconditionally.
* Get rid of alias for m_broadcast.Gravatar Rasmus Munk Larsen2018-07-13
|
* Optimize the case where broadcasting is a no-op.Gravatar Rasmus Munk Larsen2018-07-13
|
* Remove clang warningGravatar Gael Guennebaud2018-07-13
|
* Introduce gpu_assert for assertion in device-code, and disable them with ↵Gravatar Gael Guennebaud2018-07-13
| | | | clang-cuda.
* Add unit test for -Tensor<complex> on GPUGravatar Gael Guennebaud2018-07-12
|
* Fix cxx11_tensor_fft not building on Windows.Gravatar Thales Sabino2018-07-12
| | | | | | The type used in Eigen::DSizes needs to be at least 8 bytes long. Internally Tensor tries to convert this to an __int64 on Windows and this fails to build. On Linux, long and long long are both 8 byte integer types. * * * Changing from "long long" to "std::int64_t".
* Fix docGravatar Gael Guennebaud2018-07-12
|
* Add deprecated header files for TensorFlowGravatar Gael Guennebaud2018-07-12
|
* Updates corresponding to the latest round of PR feedbackGravatar Deven Desai2018-07-11
| | | | | | | | | | | | | | The major changes are 1. Moving CUDA/PacketMath.h to GPU/PacketMath.h 2. Moving CUDA/MathFunctions.h to GPU/MathFunction.h 3. Moving CUDA/CudaSpecialFunctions.h to GPU/GpuSpecialFunctions.h The above three changes effectively enable the Eigen "Packet" layer for the HIP platform 4. Merging the "hip_basic" and "cuda_basic" unit tests into one ("gpu_basic") 5. Updating the "EIGEN_DEVICE_FUNC" marking in some places The change has been tested on the HIP and CUDA platforms.
* renaming CUDA* to GPU* for some header filesGravatar Deven Desai2018-07-11
|
* merging updates from upstreamGravatar Deven Desai2018-07-11
|\
| * bug #1567: add optimized path for tensor broadcasting and 'Channel First' shapeGravatar Gael Guennebaud2018-07-09
| |
* | merging the CUDA and HIP implementation for the Tensor directory and the ↵Gravatar Deven Desai2018-06-20
| | | | | | | | unit tests
* | removing the *Hip files from the unsupported/Eigen/CXX11/src/Tensor and ↵Gravatar Deven Desai2018-06-20
| | | | | | | | unsupported/test directories
* | renaming *Cuda files to *Gpu in the unsupported/Eigen/CXX11/src/Tensor and ↵Gravatar Deven Desai2018-06-20
| | | | | | | | unsupported/test directories
* | updates based on PR feedbackGravatar Deven Desai2018-06-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are two major changes (and a few minor ones which are not listed here...see PR discussion for details) 1. Eigen::half implementations for HIP and CUDA have been merged. This means that - `CUDA/Half.h` and `HIP/hcc/Half.h` got merged to a new file `GPU/Half.h` - `CUDA/PacketMathHalf.h` and `HIP/hcc/PacketMathHalf.h` got merged to a new file `GPU/PacketMathHalf.h` - `CUDA/TypeCasting.h` and `HIP/hcc/TypeCasting.h` got merged to a new file `GPU/TypeCasting.h` After this change the `HIP/hcc` directory only contains one file `math_constants.h`. That will go away too once that file becomes a part of the HIP install. 2. new macros EIGEN_GPUCC, EIGEN_GPU_COMPILE_PHASE and EIGEN_HAS_GPU_FP16 have been added and the code has been updated to use them where appropriate. - `EIGEN_GPUCC` is the same as `(EIGEN_CUDACC || EIGEN_HIPCC)` - `EIGEN_GPU_DEVICE_COMPILE` is the same as `(EIGEN_CUDA_ARCH || EIGEN_HIP_DEVICE_COMPILE)` - `EIGEN_HAS_GPU_FP16` is the same as `(EIGEN_HAS_CUDA_FP16 or EIGEN_HAS_HIP_FP16)`
* | syncing this fork with upstreamGravatar Deven Desai2018-06-13
|\ \
| | * Activate dgmres unit testGravatar Gael Guennebaud2018-07-02
| | |
| | * Use std::complex constructor instead of assignment from scalarGravatar Jonathan Liu2018-06-28
| | | | | | | | | | | | | | | Fixes GCC conversion to non-scalar type requested compile error when using boost::multiprecision::cpp_dec_float_50 as scalar type.
| | * Fix oversharding bug in parallelFor.Gravatar Rasmus Munk Larsen2018-06-20
| |/
| * Merged in mfigurnov/eigen/gamma-der-a (pull request PR-403)Gravatar Benoit Steiner2018-06-11
| |\ | | | | | | | | | | | | | | | Derivative of the incomplete Gamma function and the sample of a Gamma random variable Approved-by: Benoit Steiner <benoit.steiner.goog@gmail.com>
| * | fix prototypeGravatar Gael Guennebaud2018-06-08
| | |
| | * Merge from eigen/eigenGravatar Michael Figurnov2018-06-07
| | |\ | | |/ | |/|
| | * Updated the stopping criteria in igammac_cf_impl.Gravatar Michael Figurnov2018-06-07
| | | | | | | | | | | | Previously, when computing the derivative, it used a relative error threshold. Now it uses an absolute error threshold. The behavior for computing the value is unchanged. This makes more sense since we do not expect the derivative to often be close to zero. This change makes the derivatives about 30% faster across the board. The error for the igamma_der_a is almost unchanged, while for gamma_sample_der_alpha it is a bit worse for float32 and unchanged for float64.
| | * Derivative of the incomplete Gamma function and the sample of a Gamma random ↵Gravatar Michael Figurnov2018-06-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | variable. In addition to igamma(a, x), this code implements: * igamma_der_a(a, x) = d igamma(a, x) / da -- derivative of igamma with respect to the parameter * gamma_sample_der_alpha(alpha, sample) -- reparameterization derivative of a Gamma(alpha, 1) random variable sample with respect to the alpha parameter The derivatives are computed by forward mode differentiation of the igamma(a, x) code. Although gamma_sample_der_alpha can be implemented via igamma_der_a, a separate function is more accurate and efficient due to analytical cancellation of some terms. All three functions are implemented by a method parameterized with "mode" that always computes the derivatives, but does not return them unless required by the mode. The compiler is expected to (and, based on benchmarks, does) skip the unnecessary computations depending on the mode.
* | | Adding support for using Eigen in HIP kernels.Gravatar Deven Desai2018-06-06
| |/ |/| | | | | | | | | | | | | | | This commit enables the use of Eigen on HIP kernels / AMD GPUs. Support has been added along the same lines as what already exists for using Eigen in CUDA kernels / NVidia GPUs. Application code needs to explicitly define EIGEN_USE_HIP when using Eigen in HIP kernels. This is because some of the CUDA headers get picked up by default during Eigen compile (irrespective of whether or not the underlying compiler is CUDACC/NVCC, for e.g. Eigen/src/Core/arch/CUDA/Half.h). In order to maintain this behavior, the EIGEN_USE_HIP macro is used to switch to using the HIP version of those header files (see Eigen/Core and unsupported/Eigen/CXX11/Tensor) Use the "-DEIGEN_TEST_HIP" cmake option to enable the HIP specific unit tests.
| * Merge from eigen/eigen.Gravatar Michael Figurnov2018-06-07
| |\
| | * Fix int versus IndexGravatar Gael Guennebaud2018-06-07
| | |
| * | Fix compilation of special functions without C99 math.Gravatar Michael Figurnov2018-06-07
|/ / | | | | | | | | | | The commit with Bessel functions i0e and i1e placed the ifdef/endif incorrectly, causing i0e/i1e to be undefined when EIGEN_HAS_C99_MATH=0. These functions do not actually require C99 math, so now they are always available.
| * Fix typos found using codespellGravatar Gael Guennebaud2018-06-07
| |
| * Performance improvements to tensor broadcast operationGravatar Vamsi Sripathi2018-05-23
|/ | | | | | 1. Added new packet functions using SIMD for NByOne, OneByN cases 2. Modified existing packet functions to reduce index calculations when input stride is non-SIMD 3. Added 4 test cases to cover the new packet functions
* Merged in mfigurnov/eigen (pull request PR-400)Gravatar Benoit Steiner2018-06-05
|\ | | | | | | | | | | Exponentially scaled modified Bessel functions of order zero and one. Approved-by: Benoit Steiner <benoit.steiner.goog@gmail.com>
* | Add a ThreadPoolInterface* getter for ThreadPoolDevice.Gravatar Penporn Koanantakool2018-06-02
| |
| * Exponentially scaled modified Bessel functions of order zero and one.Gravatar Michael Figurnov2018-05-31
|/ | | | | | The functions are conventionally called i0e and i1e. The exponentially scaled version is more numerically stable. The standard Bessel functions can be obtained as i0(x) = exp(|x|) i0e(x) The code is ported from Cephes and tested against SciPy.
* Hyperlink DOIs against preferred resolverGravatar Katrin Leinweber2018-05-24
|
* Merged in rmlarsen/eigen2 (pull request PR-393)Gravatar Benoit Steiner2018-05-16
|\ | | | | | | Rename scalar_clip_op to scalar_clamp_op to prevent collision with existing functor in TensorFlow.
| * Rename clip2 to clamp.Gravatar Rasmus Munk Larsen2018-05-16
| |
| * Rename scalar_clip_op to scalar_clip2_op to prevent collision with existing ↵Gravatar Rasmus Munk Larsen2018-05-16
| | | | | | | | functor in TensorFlow.
* | Merged in didierjansen/eigen (pull request PR-360)Gravatar Benoit Steiner2018-05-16
|\ \ | |/ |/| | | Fix bugs and typos in the contraction example of the tensor README
* | Use numext::maxi & numext::mini.Gravatar Rasmus Munk Larsen2018-05-14
| |
* | Add vectorized clip functor for Eigen Tensors.Gravatar Rasmus Munk Larsen2018-05-14
| |
* | Enable RawAccess to tensor slices whenever possinle.Gravatar Benoit Steiner2018-04-30
| | | | | | | | Avoid 32-bit integer overflow in TensorSlicingOp
* | Fix "used uninitialized" warningsGravatar Gael Guennebaud2018-04-24
| |
* | Workaround warningGravatar Gael Guennebaud2018-04-24
| |
* | Recent Adolc versions require C++11Gravatar Christoph Hertzberg2018-04-13
| |
* | Avoid using memcpy for non-POD elementsGravatar Weiming Zhao2018-04-11
| |
* | protect calls to isnanGravatar Gael Guennebaud2018-04-03
| |
* | Fix uninitialized output argument.Gravatar Gael Guennebaud2018-04-03
| |