aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/Core
Commit message (Collapse)AuthorAge
* Creating separate SYCL required PR for uncontroversial files.Gravatar Mehdi Goli2018-08-03
|
* Add pcast packet op for NEON.Gravatar Rasmus Munk Larsen2018-07-26
|
* Add MIPS changes missing from previous merge.Gravatar Alexey Frunze2018-07-18
|
* More clearly disable the inclusion of src/Core/arch/CUDA/Complex.h without CUDAGravatar Gael Guennebaud2018-07-18
|
* Forward declaring std::array does not work with all std libs, so let's just ↵Gravatar Gael Guennebaud2018-07-13
| | | | include <array>
* Cleanup the mess in Eigen/Core by moving CUDA/HIP stuff at more appropriate ↵Gravatar Gael Guennebaud2018-07-12
| | | | | | places (Macros.h), and alignment/vectorization logic is now in util/ConfigureVectorization.h
* 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.
* merging updates from upstreamGravatar Deven Desai2018-07-11
|\
* | 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)`
| * Extend CUDA support to matrix inversion and selfadjointeigensolverGravatar Andrea Bocci2018-06-11
| |
* | 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.
* Define pcast<> for SSE types even when AVX is enabled. (otherwise float are ↵Gravatar Gael Guennebaud2018-05-29
| | | | silently reinterpreted as int instead of being converted)
* AVX512: _mm512_rsqrt28_ps is available for AVX512ER onlyGravatar Gael Guennebaud2018-04-03
|
* MIsc. source and comment typosGravatar luz.paz2018-03-11
| | | | Found using `codespell` and `grep` from downstream FreeCAD
* For cuda 9.1 replace math_functions.hpp with cuda_runtime.hGravatar nluehr2017-12-18
|
* Added support for CUDA 9.0.Gravatar Benoit Steiner2017-08-31
|
* bug #1462: remove all occurences of the deprecated __CUDACC_VER__ macro by ↵Gravatar Gael Guennebaud2017-08-24
| | | | introducing EIGEN_CUDACC_VER
* Disable vectorization when compiled by nvcc, even is EIGEN_NO_CUDA is definedGravatar Gael Guennebaud2017-07-17
|
* Add a EIGEN_NO_CUDA option, and introduce EIGEN_CUDACC and EIGEN_CUDA_ARCH ↵Gravatar Gael Guennebaud2017-07-17
| | | | aliases
* bug #1436: fix compilation of Jacobi rotations with ARM NEON, some ↵Gravatar Gael Guennebaud2017-06-15
| | | | specializations of internal::conj_helper were missing.
* bug #1391: include IO.h before DenseBase to enable its usage in DenseBase ↵Gravatar Gael Guennebaud2017-02-13
| | | | plugins.
* Merged in ggael/eigen-flexidexing (pull request PR-294)Gravatar Gael Guennebaud2017-01-26
|\ | | | | | | generalized operator() for indexed access and slicing
* | bug #1382: move using std::size_t/ptrdiff_t to Eigen's namespace (still ↵Gravatar Gael Guennebaud2017-01-23
| | | | | | | | better than the global namespace!)
| * Add support for fixed-value in symbolic expression, c++11 only for now.Gravatar Gael Guennebaud2017-01-19
| |
* | Made sure that enabling avx2 instructions enables avx and sse instructions ↵Gravatar Benoit Steiner2017-01-19
| | | | | | | | as well.
| * Add support for symbolic expressions as arguments of operator()Gravatar Gael Guennebaud2017-01-16
| |
| * Large code refactoring:Gravatar Gael Guennebaud2017-01-11
| | | | | | | | | | | | - generalize some utilities and move them to Meta (size(), array_size()) - move handling of all and single indices to IndexedViewHelper.h - several cleanup changes
| * Move fix and symbolic to their own file, and improve doxygen compatibilityGravatar Gael Guennebaud2017-01-11
| |
| * Initial commit to add a generic indexed-based view of matrices.Gravatar Gael Guennebaud2017-01-06
|/ | | | | This version already works as a read-only expression. Numerous refactoring, renaming, extension, tuning passes are expected...
* Include SSE packet instructions when compiling with avx512 enabled.Gravatar Benoit Steiner2016-12-19
|
* Fixed merge conflictsGravatar Benoit Steiner2016-11-19
|
* Merged eigen/eigen into defaultGravatar Benoit Steiner2016-11-17
|\
* | Specialised basic math functions for SYCL device.Gravatar Luke Iwanski2016-11-17
| |
| * Enable the use of AVX512 instruction by defaultGravatar Benoit Steiner2016-11-16
|/
* Merged eigen/eigen into defaultGravatar Benoit Steiner2016-11-04
|\
* | Removed the sycl include from Eigen/Core and moved it to ↵Gravatar Mehdi Goli2016-11-04
| | | | | | | | 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;
| * Improved AVX512 configurationGravatar Benoit Steiner2016-11-03
| |
| * Improved AVX512 supportGravatar Benoit Steiner2016-11-03
| |
| * Merged eigen/eigen into defaultGravatar Benoit Steiner2016-11-03
| |\ | |/ |/|
* | Disable vectorization on device only when compiling for syclGravatar Benoit Steiner2016-11-02
| |
* | Merge latest updates from trunkGravatar Benoit Steiner2016-10-20
|\ \
| * | Fixed a few typos in the ternary tensor expressions typesGravatar Benoit Steiner2016-10-19
| | |
* | | Fixing the typo regarding missing #if needed for proper handling of ↵Gravatar Mehdi Goli2016-10-16
| | | | | | | | | | | | exceptions in Eigen/Core.
* | | Applyiing Benoit's comment to return the missing line back in Eigen/CoreGravatar Mehdi Goli2016-10-14
| | |
* | | Reducing the code by generalising sycl backend functions/structs.Gravatar Mehdi Goli2016-10-14
| | |
| | * Enabling AVX512 should also enable AVX2.Gravatar Benoit Steiner2016-10-06
| | |
| | * Merged latest updates from trunkGravatar Benoit Steiner2016-10-05
| | |\ | | |/ | |/|
* | | Pull the latest updates from trunkGravatar Benoit Steiner2016-10-05
|\| |
| * | Added support for constand std::complex numbers on GPUGravatar Benoit Steiner2016-10-03
| | |
| * | Add CUDA-specific std::complex<T> specializations for scalar_sum_op, ↵Gravatar RJ Ryan2016-09-20
| | | | | | | | | | | | scalar_difference_op, scalar_product_op, and scalar_quotient_op.