-
Notifications
You must be signed in to change notification settings - Fork 0
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
Improve get_morb_R #3
Labels
Comments
Performance analysis for 16sm case running on 32 processes with the following parameters:
Performance (in CPU cycles) improvement relative to previous code version:
|
The next bottleneck in ! Wannier-gauge overlap matrix S in the projected subspace
!
call get_win_min(ik,winmin_q)
call get_win_min(nnlist(ik,nn),winmin_qb)
S=cmplx_0
H_q_qb(:,:)=cmplx_0
do m=1,num_wann
do n=1,num_wann
do i=1,num_states(ik)
ii=winmin_q+i-1
do j=1,num_states(nnlist(ik,nn))
jj=winmin_qb+j-1
x = conjg(v_matrix(i,n,ik))*S_o(ii,jj)&
*v_matrix(j,m,nnlist(ik,nn))
S(n,m)=S(n,m) + x
H_q_qb(n,m)=H_q_qb(n,m) + x*eigval(ii,ik)
enddo
enddo
enddo
enddo Check if an extended version of |
ponweist
pushed a commit
that referenced
this issue
Aug 6, 2014
ponweist
pushed a commit
to ponweist/wannier90
that referenced
this issue
Mar 2, 2017
ponweist
pushed a commit
to ponweist/wannier90
that referenced
this issue
Mar 2, 2017
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
In
get_CC_R
(get_oper.F90, lines 781ff.), the following matrix product is done inefficiently:A similar improvement as for
get_AA_R
(see #2) needs to be done.The text was updated successfully, but these errors were encountered: