Commit Graph
40 Commits
Author SHA1 Message Date
Charles Schlosser cd70e0c4a9 BlockSparseMatrix: add block-sparse data structure and operations
libeigen/eigen!2644
2026-07-02 22:20:12 +00:00
Rasmus Munk LarsenandRasmus Munk Larsen 7bd98698c5 Eigenvalues: add inverse-iteration eigenvectors to TridiagonalEigenSolver
libeigen/eigen!2617

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-06-18 14:40:43 -07:00
Rasmus Munk LarsenandRasmus Munk Larsen fc56f71c7e Eigenvalues: add TridiagonalEigenSolver, SIMD + OpenMP spectral bisection for symmetric tridiagonal eigenvalues
libeigen/eigen!2615

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-06-12 15:33:48 -07:00
Rasmus Munk LarsenandRasmus Munk Larsen 2a2b25c064 IterativeLinearSolvers: promote solvers from unsupported/IterativeSolvers
libeigen/eigen!2606

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-06-08 10:52:03 -07:00
Rasmus Munk LarsenandRasmus Munk Larsen a7aa5d178f Benchmarks: use ArgsProduct instead of an Apply() callback in bench_threaded_spmv
libeigen/eigen!2614

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-06-07 12:53:16 -07:00
Rasmus Munk LarsenandRasmus Munk Larsen 2259c86dc5 Cholesky: Add Bunch-Kaufman factorization for symmetric/Hermitian indefinite matrices
libeigen/eigen!2612

Closes #1268 and #2479

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-06-07 12:06:23 -07:00
d3cfde9db1 Core: fix small fixed-size kernel regressions (#3083)
libeigen/eigen!2581

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
Co-authored-by: Rasmus Munk Larsen <rlarsen@nvidia.com>
2026-06-06 22:59:46 -07:00
76beb092c5 SparseCore: threaded SpMV — cached operator + extend stock OMP to ColMajor
libeigen/eigen!2557

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
Co-authored-by: Rasmus Munk Larsen <rlarsen@nvidia.com>
2026-06-06 14:14:42 -07:00
Rasmus Munk LarsenandRasmus Munk Larsen 633c2229fc SparseCore: avoid dense sparseView pre-count
libeigen/eigen!2580

Closes #3084

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-05-26 23:02:17 +00:00
Florian Maurin 381cae56f8 SparseQR: look ahead before skipping weak pivots
libeigen/eigen!2537

Closes #1563
2026-05-21 14:02:33 -07:00
Rasmus Munk LarsenandRasmus Munk Larsen e052e57612 ForkJoin: forwarding/move cleanups + add ParallelFor microbenchmark
libeigen/eigen!2556

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-05-18 10:52:09 -07:00
Rasmus Munk LarsenandRasmus Munk Larsen 8517e5318c QR: Add RandCompleteOrthogonalDecomposition (RandColPiv-backed COD)
libeigen/eigen!2534

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-05-14 14:19:25 -07:00
Rasmus Munk LarsenandRasmus Munk Larsen 8a3d6b7a81 QR: Make RandColPivHouseholderQR auto-block cache-aware
libeigen/eigen!2533

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-05-12 17:06:42 -07:00
Rasmus Munk LarsenandRasmus Munk Larsen 8a3d61c790 Licensing: SPDX identifiers, REUSE.toml, and checkformat:reuse CI job
libeigen/eigen!2509

Closes #2868

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-05-04 00:36:12 +00:00
Rasmus Munk LarsenandRasmus Munk Larsen d5d3670fac CI: fix bench builds (drop Apply/internal::Benchmark*) + relax eigensolver_selfadjoint tolerance
libeigen/eigen!2507

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-05-02 23:18:53 -07:00
Rasmus Munk LarsenandRasmus Munk Larsen e3270e925f GEMV/GEMM products: runtime L1 detection for two more cache dispatch thresholds
libeigen/eigen!2463

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-04-25 19:41:22 -07:00
Rasmus Munk LarsenandRasmus Munk Larsen c7d18929bb Geometry module: Speed up setFromTwoVectors and AngleAxis * vector
libeigen/eigen!2393

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-04-18 18:51:31 -07:00
Rasmus Munk LarsenandRasmus Munk Larsen abd1bda732 Optimize UpperBidiagonalization: fix noalias, tune block size and threshold
libeigen/eigen!2401

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-04-18 19:45:17 +00:00
Rasmus Munk LarsenandRasmus Munk Larsen cfbffe3e33 Geometry module: Bug fixes, test coverage, and benchmarks
libeigen/eigen!2391

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-04-15 19:33:48 -07:00
Rasmus Munk LarsenandRasmus Munk Larsen 110530a4d8 Fix bugs and improve robustness of SelfAdjointEigenSolver, improve test coverage
libeigen/eigen!2396

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-04-07 21:08:29 -07:00
Rasmus Munk LarsenandRasmus Munk Larsen 4ad90a60f1 Replace blas/f2c with clean C++ implementations
libeigen/eigen!2402

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-04-05 16:04:41 -07:00
Rasmus Munk LarsenandRasmus Munk Larsen d31a73437f Vectorize asinh and acosh for float and double
libeigen/eigen!2376

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-04-01 21:46:36 -07:00
Rasmus Munk LarsenandRasmus Munk Larsen 9513d3878e Vectorize sinh, cosh, and log10
libeigen/eigen!2368

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-04-01 20:41:18 -07:00
Rasmus Munk Larsen 9fe2f03fa4 Revert "Lower BDCSVD crossover threshold from 16 to 8"
This reverts merge request !2358
2026-03-29 15:25:09 -07:00
Rasmus Munk LarsenandRasmus Munk Larsen 12fe90db8b Lower BDCSVD crossover threshold from 16 to 8
libeigen/eigen!2358

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-03-29 14:33:22 -07:00
Rasmus Munk LarsenandRasmus Munk Larsen cf508c096b Add block Householder right-side application for HouseholderSequence
libeigen/eigen!2342

Closes #3057

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-03-27 19:56:08 -07:00
Rasmus Munk LarsenandRasmus Munk Larsen 9d1e5f3915 Remove benchmark::internal::Benchmark* from all benchmarks
libeigen/eigen!2332

Co-authored-by: Rasmus Munk Larsen <rlarsen@nvidia.com>
2026-03-20 17:42:07 -07:00
Rasmus Munk LarsenandRasmus Munk Larsen 8190c82cb4 Add missing SIMD math function benchmarks
libeigen/eigen!2284

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-03-11 23:20:11 -07:00
Rasmus Munk LarsenandRasmus Munk Larsen 8368a12f0f Add runtime cache size detection for ARM and improve GEMM blocking
libeigen/eigen!2282

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-03-11 22:36:33 -07:00
Rasmus Munk LarsenandRasmus Munk Larsen 662d5c21ff Optimize SYMV, SYR, SYR2, and TRMV product kernels
libeigen/eigen!2228

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-03-01 19:40:11 -08:00
Rasmus Munk LarsenandRasmus Munk Larsen 8525491eb1 Add dedicated unit tests and benchmark for ConditionEstimator
libeigen/eigen!2223

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-02-26 18:26:38 -08:00
Rasmus Munk LarsenandRasmus Munk Larsen a95440de17 Remove obsolete bench/ and btl/ directories
libeigen/eigen!2217

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-02-25 20:19:45 -08:00
a31de4778d Blocked Jacobi SVD sweep with L2-cache-adaptive threshold
libeigen/eigen!2206

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
Co-authored-by: Rasmus Munk Larsen <rmlarsen@google.com>
2026-02-25 10:03:05 -08:00
Rasmus Munk LarsenandRasmus Munk Larsen 16da0279f1 Add benchmarks for unsupported modules and extend supported benchmarks
libeigen/eigen!2179

Closes #3036

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-02-24 17:12:33 -08:00
Rasmus Munk LarsenandRasmus Munk Larsen 1f49bf96cf Add new benchmarks for Core, LU, and QR operations
libeigen/eigen!2177

Closes #3035

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-02-22 12:19:37 -08:00
Rasmus Munk LarsenandRasmus Munk Larsen d4077a6e99 Reorganize benchmarks into subdirectories and clean up Eigen sources
libeigen/eigen!2176

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-02-21 17:46:55 -08:00
Rasmus Munk LarsenandRasmus Munk Larsen 374fe225bf Reduce GEMV and TRSM benchmark sizes for faster routine runs
libeigen/eigen!2163

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-02-20 00:56:57 -08:00
Rasmus Munk LarsenandRasmus Munk Larsen 9c63d26dec Remove reference to nonexistent spmv.cpp in benchmarks
libeigen/eigen!2157

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-02-19 04:22:35 -08:00
Rasmus Munk LarsenandRasmus Munk Larsen 552ca8f15f Simplify GEBP micro-kernel and improve blocking heuristics
libeigen/eigen!2142

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-02-18 13:16:14 -08:00
Rasmus Munk LarsenandRasmus Munk Larsen 3108f6360e Migrate Eigen benchmarks to the Google benchmark framework
libeigen/eigen!2132

Closes #3025

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
2026-02-17 20:51:36 -08:00