Commit message (Collapse) | Author | Age | ||
---|---|---|---|---|
... | ||||
* | | Fix condition that made the unit test spam stdout with bogus error messages. | Rasmus Munk Larsen | 2016-02-04 | |
| | | ||||
| * | Merged in rmlarsen/eigen (pull request PR-161) | Gael Guennebaud | 2016-02-03 | |
| |\ | |/ |/| | | | Change Eigen's ColPivHouseholderQR to use numerically stable norm downdate formula | |||
* | | Fix bad line break. Don't repeat Kahan matrix test since it is deterministic. | Rasmus Munk Larsen | 2016-02-03 | |
| | | ||||
| * | bug #1164: fix list and deque specializations such that our aligned ↵ | Damien R | 2016-02-03 | |
| | | | | | | | | allocator is automatically activatived only when the user did not specified an allocator (or specified the default std::allocator). | |||
* | | merging. | Rasmus Munk Larsen | 2016-02-01 | |
|\| | ||||
| * | bug #557: make InnerIterator of sparse storage types more versatile by ↵ | Gael Guennebaud | 2016-02-01 | |
| | | | | | | | | adding default-ctor, copy-ctor/assignment | |||
| * | Fix integer path for num_steps==1 | Gael Guennebaud | 2016-02-01 | |
| | | ||||
| * | bug #698: fix linspaced for integer types. | Gael Guennebaud | 2016-02-01 | |
| | | ||||
| * | Avoid overflow in unit test. | Gael Guennebaud | 2016-01-30 | |
| | | ||||
| * | Disable underflow unit test on the i387 FPU. | Gael Guennebaud | 2016-01-30 | |
| | | ||||
| * | bug #632: add support for "dense +/- sparse" operations. The current ↵ | Gael Guennebaud | 2016-01-29 | |
| | | | | | | | | implementation is based on SparseView to make the dense subexpression compatible with the sparse one. | |||
| * | bug #696: enable zero-sized block at compile-time by relaxing the respective ↵ | Gael Guennebaud | 2016-01-29 | |
| | | | | | | | | assertion | |||
* | | Change Eigen's ColPivHouseholderQR to use the numerically stable norm ↵ | Rasmus Munk Larsen | 2016-01-28 | |
|/ | | | | | | | | | | | | | | | | | | | | | | | | downdate formula from http://www.netlib.org/lapack/lawnspdf/lawn176.pdf, which has been used in LAPACK's xGEQPF and xGEQP3 since 2006. With the old formula, the code chooses the wrong pivots and fails to correctly determine rank on graded matrices. This change also adds additional checks for non-increasing diagonal in R11 to existing unit tests, and adds a new unit test with the Kahan matrix, which consistently fails for the original code. Benchmark timings on Intel(R) Xeon(R) CPU E5-1650 v3 @ 3.50GHz. Code compiled with AVX & FMA. I just ran on square matrices of 3 difference sizes. Benchmark Time(ns) CPU(ns) Iterations ------------------------------------------------------- Before: BM_EigencolPivQR/64 53677 53627 12890 BM_EigencolPivQR/512 15265408 15250784 46 BM_EigencolPivQR/4k 15403556228 15388788368 2 After (non-vectorized version): Benchmark Time(ns) CPU(ns) Iterations Degradation -------------------------------------------------------------------- BM_EigencolPivQR/64 63736 63669 10844 18.5% BM_EigencolPivQR/512 16052546 16037381 43 5.1% BM_EigencolPivQR/4k 15149263620 15132025316 2 -2.0% Performance-wise there seems to be a ~18.5% degradation for small (64x64) matrices, probably due to the cost of more O(min(m,n)^2) sqrt operations that are not needed for the unstable formula. | |||
* | bug #178: remove additional const on nested expression, and remove several ↵ | Gael Guennebaud | 2016-01-28 | |
| | | | | const_cast. | |||
* | merge | Gael Guennebaud | 2016-01-28 | |
|\ | ||||
* | | bug #1158: PartialReduxExpr is a vector expression, and it thus must expose ↵ | Gael Guennebaud | 2016-01-28 | |
| | | | | | | | | the LinearAccessBit flag | |||
* | | Extend mixing type unit test with trmv, and the following not yet supported ↵ | Gael Guennebaud | 2016-01-27 | |
| | | | | | | | | products: trmm, symv, symm | |||
* | | add nomalloc unit test for rank2 updates | Gael Guennebaud | 2016-01-27 | |
| | | ||||
* | | Fix tri = complex * real product, and add respective unit test. | Gael Guennebaud | 2016-01-27 | |
| | | ||||
* | | Remove redundant test. | Gael Guennebaud | 2016-01-26 | |
| | | ||||
* | | bug #51: add block preallocation mechanism to selfadjoit*matrix product. | Gael Guennebaud | 2016-01-25 | |
| | | ||||
* | | bug #51: make general_matrix_matrix_triangular_product use L3-blocking ↵ | Gael Guennebaud | 2016-01-25 | |
| | | | | | | | | helper so that general symmetric rank-updates and general-matrix-to-triangular products do not trigger dynamic memory allocation for fixed size matrices. | |||
* | | Add SparseVector::conservativeResize() method. | Gael Guennebaud | 2016-01-25 | |
| | | ||||
* | | bug #977: add stableNormalize[d] methods: they are analogues to normalize[d] ↵ | Gael Guennebaud | 2016-01-23 | |
| | | | | | | | | but with carefull handling of under/over-flow | |||
* | | bug #1150: make IncompleteCholesky more robust by iteratively increase the ↵ | Gael Guennebaud | 2016-01-23 | |
| | | | | | | | | shift until the factorization succeed (with at most 10 attempts). | |||
* | | bug #1095: add Cholmod*::logDeterminant/determinant (from patch of Joshua ↵ | Gael Guennebaud | 2016-01-22 | |
| | | | | | | | | Pritikin) | |||
* | | bug #977: avoid division by 0 in normalize() and normalized(). | Gael Guennebaud | 2016-01-21 | |
| | | ||||
* | | add upper|lower case in incomplete_cholesky unit test | Gael Guennebaud | 2016-01-21 | |
| | | ||||
* | | bug #1149: fix Pastix*::*parm() | Gael Guennebaud | 2016-01-20 | |
| | | ||||
* | | bug #1144: fix regression in x=y+A*x (aliasing), and move ↵ | Gael Guennebaud | 2016-01-09 | |
| | | | | | | | | evaluator_traits::AssumeAliasing to evaluator_assume_aliasing. | |||
| * | Protect digamma tests behind a EIGEN_HAS_C99_MATH check. | Eugene Brevdo | 2015-12-24 | |
| | | ||||
| * | Add digamma for CPU + CUDA. Includes tests. | Eugene Brevdo | 2015-12-24 | |
|/ | ||||
* | Merged in ebrevdo/eigen (pull request PR-148) | Gael Guennebaud | 2015-12-11 | |
|\ | | | | | | | Add special functions to eigen: lgamma, erf, erfc. | |||
* | | Fix unit tests wrt EIGEN_DEFAULT_TO_ROW_MAJOR | Gael Guennebaud | 2015-12-11 | |
| | | ||||
| * | Fixed compilation error triggered by MSVC 2008 | Benoit Steiner | 2015-12-10 | |
| | | ||||
| * | Only test the lgamma, erf and erfc function when using a C99 compliant compiler | Benoit Steiner | 2015-12-10 | |
| | | ||||
| * | Only implement the lgamma, erf, and erfc functions when using a compiler ↵ | Benoit Steiner | 2015-12-10 | |
| | | | | | | | | compliant with the C99 specification. | |||
* | | Workaround gcc issue with -O3 and the i387 FPU. | Gael Guennebaud | 2015-12-10 | |
| | | ||||
| * | Only disable the erf, erfc, and lgamma tests for older versions of c++. | Benoit Steiner | 2015-12-07 | |
| | | ||||
| * | Fixed a couple of typos | Benoit Steiner | 2015-12-07 | |
| | | | | | | | | Cleaned up the code a bit. | |||
| * | Add special functions to Eigen: lgamma, erf, erfc. | Eugene Brevdo | 2015-12-07 | |
| | | | | | | | | Includes CUDA support and unit tests. | |||
* | | Disable complex scalar types because the compiler might aggressively vectorize | Gael Guennebaud | 2015-12-09 | |
| | | | | | | | | the initialization of complex coeffs to 0 before we can check for alignedness | |||
* | | Extend unit test of coeff-based product to check many more combinations | Gael Guennebaud | 2015-12-08 | |
|/ | ||||
* | Added rsqrt() method to the Array class: this method computes the ↵ | Benoit Steiner | 2015-12-03 | |
| | | | | coefficient-wise inverse square root much more efficiently than calling sqrt().inverse(). | |||
* | Add missing Rotation2D::operator=(Matrix2x2) | Gael Guennebaud | 2015-12-03 | |
| | ||||
* | Add LU::transpose().solve() and LU::adjoint().solve() API. | Gael Guennebaud | 2015-12-01 | |
| | ||||
* | Add internal method _solve_impl_transposed() to LU decomposition classes ↵ | Rasmus Munk Larsen | 2015-11-30 | |
| | | | | that solves A^T x = b or A^* x = b. | |||
* | Fix matrix to quaternion (and angleaxis) conversion for matrix expression. | Gael Guennebaud | 2015-12-01 | |
| | ||||
* | Do not check NeedsToAlign if no static alignment | Gael Guennebaud | 2015-11-30 | |
| | ||||
* | Extend superlu cmake script to check version | Gael Guennebaud | 2015-11-30 | |
| |