Open
Conversation
…piles - PARALLEL_HERMITIAN_chase added. --> Parallel routine that computes the neig smallest eigenvalues of the Hermitian Hamiltonian with ChASE using simple or double precision depending on user's configuration. /!\ Compiles but no tried. - Previous commit : -- SERIAL_HERMITIAN_chase added. --> Computes the neig smallest eigenvalues of the Hermitian Hamiltonian sequentially with ChASE. -- SERIAL_HERMITIAN_feweigenvalues added. --> Sequential routine that computes the neig smallest eigenvalues of the Hermitian Hamiltonian with (C|Z)HEEVx. -- PARALLEL_HERMITIAN_feweigenvalues added. --> Parallel routine that computes the neig smallest eigenvalues of the Hermitian Hamiltonian with p(C|Z)HEEVx. - The Hamiltonian is distributed using the block cyclic scheme. However, it seems that the size of each block is N/nprow, which appears to be equivalent with a block-block scattering. --> The number of eigenvalues is requested by the user in input file. See BSSNEig parameter. - Notes : --> The Eigensolver is chosen by setting BSSmod= "[BSS]" # [BSS] (h)aydock/(d)iagonalization/(s)lepc/(i)nversion/(t)ddft`/heev(x)/(c)hase --> ChASE config file in config/m4/chase.m4 /!\ \\$(lchase) added in sbin/compilation/libraries.sh /!\ - To do : --> Parameters such as deg and opt are defined internally yet, but should be set in the input file .in --> Download ChASE internaly if enabled but not referenced by user or not found in the system --> Adapt ChASE configuration to shared memory only and no-GPU clusters. --> Check that the grid distribution of the neig eigenvectors returned by ChASE fits with the BSE computation.
--> Need to fix the communicator issue - LINEAR_ALGEBRA_driver.F : --> if statement on l_chase added - To do : --> Need to understand the set-up of INTRA_comm and INTER_comm
--> The communicator issue is fixed. In fact, only "use chase_diag" was missing. - jobs/scripts --> contains a back-up of all the scripts used to benchmark yambo. Main test case yet is Silicon, but not commited. - config/m4/chase.m4 --> Order of linked libraries reordered. - To do : --> Add ChASE parameters in input file --> Extract information on ChASE convergence (iterations, etc.) --> Build ChASE internally if missing or $ChASEROOT undefined.
--> ChASE output eigenvectors reordered differently, assuming the spliting of the matrix is based on a block block distribution --> Fixed Bug in the if condition aims at choosing the right eigensolver --> Some debugging prints are now commented
… does not run on Stages/2026 yet
Ydiago disabled (possibly temporarily) when working with CHASE
* cleanup of CHASE support in Yambo * Testing works for a number of eigenvalues large enough (pathologic behaviour to be firther investigated)
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
ChASE library integration in Yambo.