aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Core/util
Commit message (Collapse)AuthorAge
* Merged in deven-amd/eigen (pull request PR-402)Gravatar Gael Guennebaud2018-07-12
|\ | | | | | | Adding support for using Eigen in HIP kernels.
* | Remove useless specialization thanks to is_convertible being more robust.Gravatar Gael Guennebaud2018-07-12
| |
* | spellcheckGravatar Gael Guennebaud2018-07-12
| |
* | Make is_convertible more robust and conformant to std::is_convertibleGravatar Gael Guennebaud2018-07-12
| |
* | Fix double ;;Gravatar Gael Guennebaud2018-07-11
| |
| * merging updates from upstreamGravatar Deven Desai2018-07-11
| |\ | |/ |/|
* | Add internall::is_identity compile-time helperGravatar Gael Guennebaud2018-07-11
| |
* | Fix conversion warningGravatar Gael Guennebaud2018-07-10
| |
* | Introduce the macro ei_declare_local_nested_eval to help allocating on the ↵Gravatar Gael Guennebaud2018-07-09
| | | | | | | | | | | | stack local temporaries via alloca, and let outer-products makes a good use of it. If successful, we should use it everywhere nested_eval is used to declare local dense temporaries.
| * 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
| |\
* | | Extend CUDA support to matrix inversion and selfadjointeigensolverGravatar Andrea Bocci2018-06-11
| | |
* | | Make is_same_dense compatible with different scalar types.Gravatar Gael Guennebaud2018-07-03
| |/ |/|
* | Don't use std::equal_to inside cuda kernels since it's not supported.Gravatar Benoit Steiner2018-06-07
| |
| * 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.
* | Fix MSVC warning C4290: C++ exception specification ignored except to ↵Gravatar Gael Guennebaud2018-06-07
| | | | | | | | indicate a function is not __declspec(nothrow)
* | Set EIGEN_IDEAL_MAX_ALIGN_BYTES correctly for AVX512 buildsGravatar Mark D Ryan2018-05-17
|/ | | | | | | | | | | | bug #1548 The macro EIGEN_IDEAL_MAX_ALIGN_BYTES is being incorrectly set to 32 on AVX512 builds. It should be set to 64. In the current code it is only set to 64 if the macro EIGEN_VECTORIZE_AVX512 is defined. This macro does get defined in AVX512 builds in Core, but only after Macros.h, the file that defines EIGEN_IDEAL_MAX_ALIGN_BYTES, has been included. This commit fixes the issue by setting EIGEN_IDEAL_MAX_ALIGN_BYTES to 64 if __AVX512F__ is defined.
* Fix internal::is_integral<size_t/ptrdiff_t> with MSVC 2013 and older.Gravatar Gael Guennebaud2018-05-22
|
* fix stupid typoGravatar Gael Guennebaud2018-05-18
|
* is_convertible<T,Index> does not seems to work well with MSVC 2013, so let's ↵Gravatar Gael Guennebaud2018-05-18
| | | | rather use __is_enum(T) for old MSVC versions
* add some internal checksGravatar Gael Guennebaud2018-05-18
|
* Add specializations of is_arithmetic for long long in c++11Gravatar Gael Guennebaud2018-04-23
|
* Disable -Wshadow when compiling with g++Gravatar Christoph Hertzberg2018-04-21
|
* fix linking issueGravatar Gael Guennebaud2018-04-13
|
* bug #1520: workaround some -Wfloat-equal warnings by calling std::equal_toGravatar Gael Guennebaud2018-04-11
|
* Extend list of MSVC versionsGravatar Gael Guennebaud2018-04-04
|
* commit 45e9c9996da790b55ed9c4b0dfeae49492ac5c46 (HEAD -> memory_fix)Gravatar Gael Guennebaud2018-04-03
| | | | | | | | | | | | | | | | | Author: George Burgess IV <gbiv@google.com> Date: Thu Mar 1 11:20:24 2018 -0800 Prefer `::operator new` to `new` The C++ standard allows compilers much flexibility with `new` expressions, including eliding them entirely (https://godbolt.org/g/yS6i91). However, calls to `operator new` are required to be treated like opaque function calls. Since we're calling `new` for side-effects other than allocating heap memory, we should prefer the less flexible version. Signed-off-by: George Burgess IV <gbiv@google.com>
* MIsc. source and comment typosGravatar luz.paz2018-03-11
| | | | Found using `codespell` and `grep` from downstream FreeCAD
* Implement better static assertion checking to make sure that the first ↵Gravatar Gael Guennebaud2018-03-09
| | | | assertion is a static one and not a runtime one.
* Add static assertion on selfadjoint-view's UpLo parameter.Gravatar Gael Guennebaud2018-03-09
|
* Add possibility to overwrite EIGEN_STRONG_INLINE.Gravatar Gael Guennebaud2017-12-14
|
* Add EIGEN_MKL_NO_DIRECT_CALL optionGravatar Gael Guennebaud2017-11-09
|
* Patch from Konstantin Arturov to enable MKL's direct call by defaultGravatar Gael Guennebaud2017-11-09
|
* Merged in ↵Gravatar Benoit Steiner2017-10-21
|\ | | | | | | | | | | LaFeuille/eigen-1/LaFeuille/typo-fix-alignmeent-alignment-1505889397887 (pull request PR-335) Typo fix alignmeent ->alignment
* | bug #1468 (1/2) : add missing std:: to memcpyGravatar Gael Guennebaud2017-09-22
| |
* | Update documentation for aligned_allocatorGravatar Gael Guennebaud2017-09-20
| |
| * Typo fix alignmeent ->alignmentGravatar LaFeuille2017-09-20
|/
* clang provides __has_feature(is_enum) (but not <type_traits>) in C++03 modeGravatar Christoph Hertzberg2017-09-14
|
* std::integral_constant is not C++03 compatibleGravatar Christoph Hertzberg2017-09-14
|
* Fix compilation of Vector::operator()(enum) by treating enums as IndexGravatar Gael Guennebaud2017-09-07
|
* bug #1462: remove all occurences of the deprecated __CUDACC_VER__ macro by ↵Gravatar Gael Guennebaud2017-08-24
| | | | introducing EIGEN_CUDACC_VER
* Clarify doc regarding the usage of MKL_DIRECT_CALLGravatar Gael Guennebaud2017-08-17
|
* Fix support for MKL's BLAS when using MKL_DIRECT_CALL.Gravatar Gael Guennebaud2017-08-17
|
* disable nvcc boolean-expr-is-constant warningGravatar Gael Guennebaud2017-07-17
|
* Add a EIGEN_NO_CUDA option, and introduce EIGEN_CUDACC and EIGEN_CUDA_ARCH ↵Gravatar Gael Guennebaud2017-07-17
| | | | aliases
* Fix a gcc7 warning: Wint-in-bool-contextGravatar Gael Guennebaud2017-06-26
|
* Enable MSVC 2010 workaround from MSVC onlyGravatar Gael Guennebaud2017-06-09
|
* updated warning number for nvcc relase 8 (V8.0.61) for the stupid warning ↵Gravatar Abhijit Kundu2017-05-01
| | | | message 'calling a __host__ function from a __host__ __device__ function is not allowed'.
* update has_ReturnType to be more consistent with other has_ helpersGravatar Gael Guennebaud2017-03-17
|
* Adjusted the EIGEN_DEVICE_FUNC qualifiers to make sure that:Gravatar Benoit Steiner2017-03-01
| | | | | * they're used consistently between the declaration and the definition of a function * we avoid calling host only methods from host device methods.