Deven Desai
876f392c39
Updates corresponding to the latest round of PR feedback
...
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.
2018-07-11 10:39:54 -04:00
Deven Desai
d1d22ef0f4
syncing this fork with upstream
2018-06-13 12:09:52 -04:00
Gael Guennebaud
cb4c9a6a94
bug #1531 : make dedicatd unit testing for NumDimensions
2018-06-08 17:11:45 +02:00
Gael Guennebaud
f4d1461874
Fix the way matrix folder is passed to the tests.
2018-06-08 09:55:46 +02:00
Deven Desai
8fbd47052b
Adding support for using Eigen in HIP kernels.
...
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.
2018-06-06 10:12:58 -04:00
Gael Guennebaud
999b552c16
Search for sequential Pastix.
2018-05-29 20:49:25 +02:00
Gael Guennebaud
eef4b7bd87
Fix handling of path names containing spaces and the likes.
2018-05-29 20:49:06 +02:00
Christoph Hertzberg
750af06362
Add an option to test with external BLAS library
2018-05-22 21:04:32 +02:00
Christoph Hertzberg
2cbb00b18e
No need to make noise, if KLU is found
2018-04-13 19:14:25 +02:00
luz.paz
e3912f5e63
MIsc. source and comment typos
...
Found using `codespell` and `grep` from downstream FreeCAD
2018-03-11 10:01:44 -04:00
Kyle Vedder
c0e1d510fd
Add support for SuiteSparse's KLU routines
2017-10-04 21:01:23 -05:00
Gael Guennebaud
b0f55ef85a
merge
2017-02-21 17:04:10 +01:00
Gael Guennebaud
582b5e39bf
bug #1393 : enable Matrix/Array explicit ctor from types with conversion operators (was ok with 3.2)
2017-02-17 14:10:57 +01:00
Gael Guennebaud
9036cda364
Cleanup intitial reshape implementation:
...
- reshape -> reshaped
- make it compatible with evaluators.
2017-01-29 14:57:45 +01:00
Gael Guennebaud
0e89baa5d8
import yoco xiao's work on reshape
2017-01-29 14:29:31 +01:00
Gael Guennebaud
5783158e8f
Add unit test for FixedInt and Symbolic
2017-01-24 10:55:12 +01:00
Gael Guennebaud
60e99ad8d7
Add unit test for indexed views
2017-01-06 11:59:08 +01:00
Gael Guennebaud
498aa95a8b
bug #1424 : add numext::abs specialization for unsigned integer types.
2017-06-09 11:53:49 +02:00
Gael Guennebaud
0f83aeb6b2
Improve cmake scripts for Pastix and BLAS detection.
2017-04-14 10:22:12 +02:00
Benoit Steiner
616a7a1912
Improved support for compiling CUDA code with clang as the host compiler
2016-10-03 17:09:33 -07:00
Gael Guennebaud
9908020d36
Add minimal support for Array<string>, and fix Tensor<string>
2016-07-25 14:25:56 +02:00
Gael Guennebaud
d075d122ea
Move half unit test from unsupported to main tests
2016-07-22 14:34:19 +02:00
Gael Guennebaud
b64b9d0172
Add a unit test to stress our solvers with Boost.Multiprecision
2016-07-20 15:20:14 +02:00
Gael Guennebaud
32a41ee659
bug #707 : add inplace decomposition through Ref<> for Cholesky, LU and QR decompositions.
2016-07-04 15:13:35 +02:00
Gael Guennebaud
5a71eb5985
Big 1213: add regression unit test.
2016-05-18 14:03:03 +02:00
Benoit Steiner
217d984abc
Fixed a typo in my previous commit
2016-05-11 10:22:15 -07:00
Benoit Steiner
0d2a532fc3
Created the new EIGEN_TEST_CUDA_CLANG option to compile the CUDA tests using clang instead of nvcc
2016-04-08 13:16:08 -07:00
Benoit Steiner
7781f865cb
Renamed the EIGEN_TEST_NVCC cmake option into EIGEN_TEST_CUDA per the discussion in bug #1173 .
2016-04-06 09:35:23 -07:00
Damien R
c301f99208
bug #1164 : fix list and deque specializations such that our aligned allocator is automatically activatived only when the user did not specified an allocator (or specified the default std::allocator).
2016-02-03 18:07:25 +01:00
Gael Guennebaud
6fcd316f23
Extend superlu cmake script to check version
2015-11-30 14:48:11 +01:00
Gael Guennebaud
946f8850e8
bug #1008 : add a unit test for fast-math mode and isinf/isnan/isfinite/etc. functions.
2015-10-27 16:44:45 +01:00
Gael Guennebaud
4704bdc9c0
Make the IterativeLinearSolvers module compatible with MPL2-only mode
...
by defaulting to COLAMDOrdering and NaturalOrdering for ILUT and ILLT respectively.
2015-10-26 15:17:52 +01:00
Gael Guennebaud
1b148d9e2e
Move IncompleteCholesky to official modules
2015-10-08 11:32:46 +02:00
Benoit Steiner
a446020b78
Reenable 2 tests previously disabled by mistake
2015-07-23 08:47:00 -07:00
Benoit Steiner
4200bdec24
Extended the range of value inputs for TensorIntDiv to support tensors with more than 4 billion elements.
2015-07-22 17:02:30 -07:00
Gael Guennebaud
192bce2795
bug #890 , add a more general routine to check that two dense object reference to the same data
2015-06-10 10:09:04 +02:00
Christoph Hertzberg
3be9f5c4d7
Constructing a Matrix/Array with implicit transpose could lead to memory leaks.
...
Also reduced code duplication for Matrix/Array constructors
2015-04-16 13:25:20 +02:00
Christoph Hertzberg
266a84558f
Optionally build the documentation when building unit tests.
2015-03-27 16:36:59 +01:00
Gael Guennebaud
d7698c18b7
Split sparse_basic unit test
2015-03-19 15:11:05 +01:00
Gael Guennebaud
f329d0908a
Improve random number generation for integer and add unit test
2015-03-19 15:10:36 +01:00
Gael Guennebaud
05274219a7
Add a CG-based solver for rectangular least-square problems (bug #975 ).
2015-03-04 09:34:27 +01:00
Gael Guennebaud
f2ff8c091e
Add a Ref<SparseMatrix> specialization.
2015-02-07 22:04:18 +01:00
Gael Guennebaud
21c0a2ce0c
Move D&C SVD to official SVD module.
2014-10-29 11:29:33 +01:00
Christoph Hertzberg
c12b7896d0
bug #766 : Check minimum CUDA version
2014-10-20 14:23:11 +02:00
Gael Guennebaud
3878e6f170
Add a true ctest unit test for failtests
2014-09-23 10:25:12 +02:00
Gael Guennebaud
0ca43f7e9a
Remove deprecated code not used by evaluators
2014-09-18 15:15:27 +02:00
Gael Guennebaud
c1d0f15bde
Enable evaluators by default
2014-08-29 15:31:32 +02:00
Gael Guennebaud
124d12a915
merge default branch
2014-08-29 15:20:31 +02:00
Gael Guennebaud
2a3c3c49a1
Fix numerous nested versus nested_eval shortcomings
2014-08-01 14:48:22 +02:00
Gael Guennebaud
26d2cdefd4
Fix 4x4 inverse via SSE for submatrices
2014-07-31 16:24:29 +02:00
Gael Guennebaud
5f5a8d97c0
Re-enable main unit tests which are now compiling and running fine with evaluators
2014-07-31 13:43:19 +02:00
Gael Guennebaud
cd0ff253ec
Make permutation compatible with sparse matrices
2014-07-30 15:22:50 +02:00
Gael Guennebaud
929e77192c
Various minor fixes
2014-07-30 11:39:52 +02:00
Christoph Hertzberg
a8283e0ed2
Define EIGEN_TRY, EIGEN_CATCH, EIGEN_THROW as suggested by Moritz Klammer.
...
Make it possible to run unit-tests with exceptions disabled via EIGEN_TEST_NO_EXCEPTIONS flag.
Enhanced ctorleak unit-test
2014-07-22 13:16:44 +02:00
Gael Guennebaud
4aac87251f
Re-enable a couple of unit tests with evaluators.
2014-07-22 12:54:03 +02:00
Gael Guennebaud
296cb40161
merge with default branch
2014-07-10 22:04:45 +02:00
Christoph Hertzberg
75d19bb087
Determine version of Metis library. Apparently, at least version 5.x is needed for Eigen/MetisSupport.
...
Marked some internal variables as advanced
2014-07-09 16:54:15 +02:00
Moritz Klammler
58687aa5e6
Avoid memory leak when constructor of user-defined type throws exception.
...
The added check `ctorleak.cpp` demonstrates how the leak can be reproduced.
The test appears to pass but it is leaking the storage of the (not created)
matrix. I don't know how to make this test fail in the existing test suite but
you can run it through Valgrind (or another debugger) to verify the leak.
$ ./check.sh ctorleak && valgrind --leak-check=full ./test/ctorleak
This patch fixes this leak by adding some try-catch-delete-rethrow blocks to
`Eigen/src/Core/util/Memory.h`.
2014-07-06 06:58:13 +02:00
Gael Guennebaud
61b88d2feb
merge with default branch
2014-07-02 09:35:37 +02:00
Christoph Hertzberg
324e7e8fc9
Removed the deprecated EIGEN2_SUPPORT, as previously announced. A compilation error is raised, if this compile-switch is defined. The documentation references to the corresponding pages from Eigen3.2 now. Also, the Eigen2 testsuite has been removed.
2014-07-01 16:58:11 +02:00
Gael Guennebaud
b29b81a1f4
merge with default branch
2014-06-20 15:55:44 +02:00
Benoit Steiner
7903d3f27b
Updated the compiler flags to enable nvcc to work with clang.
2014-04-12 23:39:37 -07:00
Gael Guennebaud
16d4c7a5e8
Conditionally disable unit tests that are not supported by evaluators yet
2014-03-12 20:23:44 +01:00
Gael Guennebaud
40c42d9788
NVCC: no need to enforce host compiler
2014-01-24 12:51:05 +01:00
yoco
150796337a
Add unit-test for reshape
...
- add unittest for dynamic & fixed-size reshape
- fix fixed-size reshape bugs bugs found while testing
2014-01-18 16:10:46 +08:00
Gael Guennebaud
847d801a4c
Fix bug #760 : complete Eigen's lapack interface with default Lapack for SPQR if there is no fortran compiler.
2014-03-12 21:33:45 +01:00
Gael Guennebaud
fe0b44e876
Fix stupid mistake in CMakeLists.txt
2013-11-07 18:48:17 +01:00
Gael Guennebaud
76c230a84d
Add an option to test evaluators globally
2013-11-07 16:38:14 +01:00
Gael Guennebaud
4f572e4c14
Add minimalistic unit tests for NVCC support
2013-11-05 15:41:45 +01:00
Hauke Heibel
e4acd6e2fd
Added copy constructor and assignment to DenseStorage.
...
Required by the standard even when its not used but elided.
Added a test for DenseStorage copying and assignment.
2013-08-10 19:13:46 +02:00
Hauke Heibel
7c99b38b7c
Added move support for Matrix and Array.
...
Added EIGEN_HAVE_RVALUE_REFERENCES define.
Added move unit tests.
Removed superfluous 'inline' declarations in DenseStorage.
2013-08-02 19:59:43 +02:00
Hauke Heibel
39491e3b75
Enable support for minimal rebuilds.
2013-07-31 16:16:08 +02:00
Gael Guennebaud
71cccf0ed8
Rename map unit test to mapped_matrix: without splitting unit tests, this created a "map" binary file in the include path, not a good idea!
2013-07-10 23:26:35 +02:00
Gael Guennebaud
94e20f485c
Big 564: add hasNaN and isFinite members
2013-04-16 15:10:40 +02:00
Gael Guennebaud
9bfeeba1c5
Add Official/Unsupported labels to unit tests and add a ctest driver to submit subprojects to cdash
2013-03-20 08:40:13 +01:00
Gael Guennebaud
bb94f0ebc6
Add a unit test for Ref.h and fix an extra copy.
2013-02-26 15:10:00 +01:00
Desire NUENTSA
5dcf6caa36
Unit test for the Metis Ordering package
2013-01-21 15:36:18 +01:00
Desire NUENTSA
91b3b3aaab
Add a sparse QR factorization and update the elimination tree in SparseLU
2013-01-11 17:16:14 +01:00
Gael Guennebaud
8844f632fa
Move work in progress Levenberg Marquardt module in unsupported
2012-12-08 18:22:23 +01:00
Desire NUENTSA
cc0fef9807
Add tests for dense and sparse levenberg-Marquardt
2012-12-07 15:48:21 +01:00
Desire NUENTSA
9cf77ce1d8
Add support for Sparse QR factorization
2012-11-12 15:20:37 +01:00
Desire NUENTSA
fdd0f0c5fc
merge Sparse LU branch
2012-09-07 13:18:16 +02:00
Desire NUENTSA
7dc39b7037
Add unit tests
2012-08-03 13:05:45 +02:00
Gael Guennebaud
9e8d2dea80
Add a preliminary GeneralizedEigenSolver computing the eigenvalues of Av=lBv with A and B general real matrices.
...
Currently only the eigenvalues are reported.
2012-07-26 20:15:17 +02:00
Alexey Korepanov
65db91ac2b
Add a RealQZ class: a generalized Schur decomposition for real matrices
2012-07-11 16:38:03 -05:00
Gael Guennebaud
5fae6c7848
resurrect expression evaluators
2012-06-22 09:39:35 +02:00
Gael Guennebaud
512e0b151b
clean the support for testing existing sparse problems
2012-06-07 18:31:09 +02:00
Desire NUENTSA
f776c061a1
Correct a small bug in sparse_solver
2012-03-29 14:53:42 +02:00
Desire NUENTSA
f804a319c8
modify the unit tests of sparse linear solvers to enable tests on real matrices, from MatrixMarket for instance
2012-03-29 14:32:54 +02:00
Desire NUENTSA
0d8466d317
Adding an interface to PaStiX, the multithreaded and distributed linear solver
2012-03-08 18:59:08 +01:00
Jitse Niesen
3db6455896
Remove evaluators for 2.1 release.
...
We plan to re-instate them when we branch 2.2 (see bug #388 ).
2011-12-14 21:23:43 +00:00
Gael Guennebaud
9d7d634897
add cholmod_support unit tests
2011-12-10 19:32:17 +01:00
karturov
015c331252
Intel(R) MKL support added.
...
* * *
License disclaimer changed to BSD license for MKL_support.h
* * *
Pardiso support fixed, test added.
blas/lapack tests fixed: Scalar parameter was added in Cholesky, product_matrix_vector_triangular remaned to triangular_matrix_vector_product.
* * *
PARDISO test was added physically.
2011-12-05 14:52:21 +07:00
Gael Guennebaud
b85bcd91bf
remove GSL dependency in the unit tests
2011-12-01 18:17:19 +01:00
Benoit Jacob
bc6d78982f
Bugs 157 and 377 - General tightening/testing of vectorwise ops:
...
* add lots of static assertions making it very explicit when all these ops
are supposed to work:
** all ops require the rhs vector to go in the right direction
** all ops already require that the lhs and rhs are of the same kind
(matrix vs vector) otherwise we'd have to do complex work
** multiplicative ops (introduced Kibeom's patch) are restricted to arrays, if only because for matrices they could be ambiguous.
* add a new test, vectorwiseop.cpp.
* these compound-assign operators used to be implemented with for loops:
for(Index j=0; j<subVectors(); ++j)
subVector(j).array() += other.derived().array();
This didn't seem to be needed; replaced by using expressions like operator+ and operator- did.
2011-11-18 11:10:27 -05:00
Gael Guennebaud
53fa851724
move sparse solvers from unsupported/ to main Eigen/ and remove the "not stable yet" warning
2011-11-12 14:11:27 +01:00
Benoit Jacob
dcbc985a28
bug #363 - add test for integer overflow in size computations
2011-10-16 16:12:19 -04:00
Gael Guennebaud
cd3c2451b6
add a unit test for permutation applied to sparse objects
2011-10-11 13:45:27 +02:00
Gael Guennebaud
5541bcb769
bug #225 : add a unit test for memory leak
2011-05-23 14:20:49 +02:00
Gael Guennebaud
f4ac7d2b43
automatically generate the CALL_SUBTEST_* macros
2011-03-28 17:39:05 +02:00