Skip to content

DArray: Add LU, triangular solve, and more#675

Merged
jpsamaroo merged 20 commits intomasterfrom
jps/lu-ldiv3
Feb 23, 2026
Merged

DArray: Add LU, triangular solve, and more#675
jpsamaroo merged 20 commits intomasterfrom
jps/lu-ldiv3

Conversation

@jpsamaroo
Copy link
Copy Markdown
Member

@jpsamaroo jpsamaroo commented Feb 3, 2026

Thanks to @AkhilAkkapelli for the implementations! He implemented these a while back, but I had blocked merging them on #662 as they use views in Datadeps (which were broken until that PR).

This also fixes some bugs in Datadeps and improves various bits and pieces of the DArray that LinearAlgebra routines utilize.

Partially written by Claude (bug fixes, tests, etc.)

Todo:

  • Investigate and fix SingularException in LU tests
  • Add linear solving test to exercise ldiv!
  • Add ldiv! support to docs

AkhilAkkapelli and others added 17 commits February 20, 2026 08:02
- **Implemented RowMaximum Pivoting**: Added a new LU factorization strategy using the RowMaximum pivoting method for distributed matrices

- **Custom Pivot Search and Swapping**: Introduced helper functions for searching row maxima, updating pivot indices, and swapping rows in both panel and trailing submatrices

- **Blockwise Distributed Algorithm**: Ensured compatibility with block-partitioned distributed matrices, supporting only equal block sizes for now

- **Non-breaking Addition**: Existing NoPivot LU functionality remains unchanged; RowMaximum is an additional strategy selectable via the LinearAlgebra interface.
@jpsamaroo jpsamaroo merged commit a45a83f into master Feb 23, 2026
6 of 16 checks passed
@jpsamaroo jpsamaroo deleted the jps/lu-ldiv3 branch February 23, 2026 00:49
@jpsamaroo
Copy link
Copy Markdown
Member Author

@AkhilAkkapelli thanks so much for your hard work and patience on these algorithms! ❤️
@fda-tome thank you again for helping me to debug the Datadeps issues 😄

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants