forked from abacusmodeling/abacus-develop
-
Notifications
You must be signed in to change notification settings - Fork 145
Refactor: Unify standard/generalized eig driver of LAPACK #6610
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
mohanchen
merged 20 commits into
deepmodeling:develop
from
Cstandardlib:refactor/hegvd_op
Oct 21, 2025
Merged
Refactor: Unify standard/generalized eig driver of LAPACK #6610
mohanchen
merged 20 commits into
deepmodeling:develop
from
Cstandardlib:refactor/hegvd_op
Oct 21, 2025
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Collaborator
|
LGTM |
Critsium-xy
approved these changes
Oct 21, 2025
kluonj
pushed a commit
to kluonj/abacus-develop
that referenced
this pull request
Oct 24, 2025
…ng#6610) * Update lapack_hegvd interface to support lda different than n * Replace hegvd_op with lapack_hegvd in diago_dav_subspace * Remove itype parameter for heevx that is required only in gv * Update heevx to use correct arg list * Add lapack_heevx * Fix lapack_heevx and add template instantiation * Replace hsolver::heevx_op with ct::kernels::lapack_heevx in diago_david * Add lapack_hegvx * Fix hip hegvd * Fix hegvd to prevent B from being overwritten by Cholesky * Switch on ATen/kernels/test * Change container test TARGET name to be auto-run by CI * Add test for heevx * Add test for hegvx * Remove test output code * Clean the code and add docs * Fix mismatched parentheses
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
Interfaces
Interfaces with other packages
Refactor
Refactor ABACUS codes
Unit Tests/Integreate Tests
Issues/PR related to unit tests and integrate tests
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Linked Issue
Fix #6592
What's changed?
lda(leading dimension) different thann(order of the matrices).hegvd_op.h/cppto unifiedcontainer::kernels::lapack_xxxAPI. Change the diago_dav* code (Davidson-type methods). Now onlyhegvdandheevxare changed, sincehegvxCPU needs some other code change.lapack_heevx,lapack_hegvx.RemoveShould be conducted later in a new PR to gradually migrate into new lapack APIs, adding Unit Tests first.hegvd_op.h/cpp.Tip
Diago_DavSubspaceis not protected by a unittest.Tests
source/source_base/module_container/ATen/to be auto-run inMODULE_BASEgroup by GitHub CI.Any changes of core modules?
Important
Now all Column-Major LAPACK Heterogeneous Interface has been consolidated in
source_base/module_container.Reminder: New changes/extensions for column-major LAPACK interface are supposed to be based on this module.
Please DO NOT add separately or create branches.
Caution
containerDevice is different frombase_device!