mirror of
https://github.com/QuantumPackage/qp2.git
synced 2024-11-03 20:53:54 +01:00
Can't improve davidsion with storage
This commit is contained in:
parent
db29e0048a
commit
0b3b62aec8
@ -775,12 +775,6 @@ subroutine davidson_diag_hjj_sjj(dets_in,u_in,H_jj,s2_out,energies,dim_in,sze,N_
|
||||
)
|
||||
FREE nthreads_davidson
|
||||
|
||||
! call mmap_destroy(singles_alpha_csc_map)
|
||||
! FREE singles_alpha_csc_map
|
||||
!
|
||||
! call mmap_destroy(singles_beta_csc_map)
|
||||
! FREE singles_beta_csc_map
|
||||
|
||||
end
|
||||
|
||||
|
||||
|
@ -179,13 +179,12 @@ subroutine H_u_0_nstates_openmp_work_$N_int(v_t,u_t,N_st,sze,istart,iend,ishift,
|
||||
!
|
||||
! compute_singles = (mem+rss > qp_max_mem)
|
||||
!
|
||||
! if (.not.compute_singles) then
|
||||
! provide singles_beta_csc
|
||||
! endif
|
||||
compute_singles=.True.
|
||||
|
||||
PROVIDE singles_beta_csc_map singles_alpha_csc_map
|
||||
if (.not.compute_singles) then
|
||||
provide singles_alpha_csc singles_beta_csc
|
||||
endif
|
||||
|
||||
compute_singles=.True.
|
||||
|
||||
|
||||
maxab = max(N_det_alpha_unique, N_det_beta_unique)+1
|
||||
@ -212,8 +211,8 @@ compute_singles=.True.
|
||||
!$OMP psi_bilinear_matrix_transp_rows_loc, &
|
||||
!$OMP istart, iend, istep, irp_here, v_t, &
|
||||
!$OMP ishift, idx0, u_t, maxab, compute_singles, &
|
||||
!$OMP singles_alpha_csc_map,singles_alpha_csc_idx, &
|
||||
!$OMP singles_beta_csc_map,singles_beta_csc_idx) &
|
||||
!$OMP singles_alpha_csc,singles_alpha_csc_idx, &
|
||||
!$OMP singles_beta_csc_,singles_beta_csc_idx) &
|
||||
!$OMP PRIVATE(krow, kcol, tmp_det, spindet, k_a, k_b, i, &
|
||||
!$OMP lcol, lrow, l_a, l_b, utl, kk, u_is_sparse, &
|
||||
!$OMP buffer, doubles, n_doubles, umax, &
|
||||
@ -275,7 +274,7 @@ compute_singles=.True.
|
||||
!DIR$ LOOP COUNT avg(1000)
|
||||
do k8=singles_beta_csc_idx(kcol),singles_beta_csc_idx(kcol+1)-1
|
||||
n_singles_b = n_singles_b+1
|
||||
singles_b(n_singles_b) = singles_beta_csc_map%i1(k8)
|
||||
singles_b(n_singles_b) = singles_beta_csc(k8)
|
||||
enddo
|
||||
endif
|
||||
endif
|
||||
@ -329,9 +328,9 @@ compute_singles=.True.
|
||||
right = singles_alpha_csc_idx(krow+1)
|
||||
do while (right-left>0_8)
|
||||
k8 = shiftr(right+left,1)
|
||||
if (singles_alpha_csc_map%i1(k8) > lrow) then
|
||||
if (singles_alpha_csc(k8) > lrow) then
|
||||
right = k8
|
||||
else if (singles_alpha_csc_map%i1(k8) < lrow) then
|
||||
else if (singles_alpha_csc(k8) < lrow) then
|
||||
left = k8 + 1_8
|
||||
else
|
||||
right_max = k8+1_8
|
||||
@ -357,9 +356,9 @@ compute_singles=.True.
|
||||
right = right_max
|
||||
do while (right-left>0_8)
|
||||
k8 = shiftr(right+left,1)
|
||||
if (singles_alpha_csc_map%i1(k8) > lrow) then
|
||||
if (singles_alpha_csc(k8) > lrow) then
|
||||
right = k8
|
||||
else if (singles_alpha_csc_map%i1(k8) < lrow) then
|
||||
else if (singles_alpha_csc(k8) < lrow) then
|
||||
left = k8 + 1_8
|
||||
else
|
||||
n_singles_a += 1
|
||||
|
@ -218,14 +218,13 @@ subroutine H_S2_u_0_nstates_openmp_work_$N_int(v_t,s_t,u_t,N_st,sze,istart,iend,
|
||||
!
|
||||
! compute_singles = (mem+rss > qp_max_mem)
|
||||
!
|
||||
! if (.not.compute_singles) then
|
||||
! provide singles_beta_csc
|
||||
! endif
|
||||
compute_singles=.True.
|
||||
|
||||
! PROVIDE singles_beta_csc_map singles_alpha_csc_map
|
||||
PROVIDE singles_beta_csc singles_alpha_csc
|
||||
if (.not.compute_singles) then
|
||||
provide singles_alpha_csc
|
||||
provide singles_beta_csc
|
||||
endif
|
||||
|
||||
compute_singles=.True.
|
||||
|
||||
|
||||
maxab = max(N_det_alpha_unique, N_det_beta_unique)+1
|
||||
@ -254,8 +253,6 @@ subroutine H_S2_u_0_nstates_openmp_work_$N_int(v_t,s_t,u_t,N_st,sze,istart,iend,
|
||||
!$OMP ishift, idx0, u_t, maxab, compute_singles, &
|
||||
!$OMP singles_alpha_csc,singles_alpha_csc_idx, &
|
||||
!$OMP singles_beta_csc,singles_beta_csc_idx) &
|
||||
! !$OMP singles_alpha_csc_map,singles_alpha_csc_idx, &
|
||||
! !$OMP singles_beta_csc_map,singles_beta_csc_idx) &
|
||||
!$OMP PRIVATE(krow, kcol, tmp_det, spindet, k_a, k_b, i, &
|
||||
!$OMP lcol, lrow, l_a, l_b, utl, kk, u_is_sparse, &
|
||||
!$OMP buffer, doubles, n_doubles, umax, &
|
||||
@ -317,7 +314,6 @@ subroutine H_S2_u_0_nstates_openmp_work_$N_int(v_t,s_t,u_t,N_st,sze,istart,iend,
|
||||
!DIR$ LOOP COUNT avg(1000)
|
||||
do k8=singles_beta_csc_idx(kcol),singles_beta_csc_idx(kcol+1)-1
|
||||
n_singles_b = n_singles_b+1
|
||||
! singles_b(n_singles_b) = singles_beta_csc_map%i1(k8)
|
||||
singles_b(n_singles_b) = singles_beta_csc(k8)
|
||||
enddo
|
||||
endif
|
||||
@ -375,10 +371,8 @@ subroutine H_S2_u_0_nstates_openmp_work_$N_int(v_t,s_t,u_t,N_st,sze,istart,iend,
|
||||
right = singles_alpha_csc_idx(krow+1)
|
||||
do while (right-left>0_8)
|
||||
k8 = shiftr(right+left,1)
|
||||
! if (singles_alpha_csc_map%i1(k8) > lrow) then
|
||||
if (singles_alpha_csc(k8) > lrow) then
|
||||
right = k8
|
||||
! else if (singles_alpha_csc_map%i1(k8) < lrow) then
|
||||
else if (singles_alpha_csc(k8) < lrow) then
|
||||
left = k8 + 1_8
|
||||
else
|
||||
@ -405,10 +399,8 @@ subroutine H_S2_u_0_nstates_openmp_work_$N_int(v_t,s_t,u_t,N_st,sze,istart,iend,
|
||||
right = right_max
|
||||
do while (right-left>0_8)
|
||||
k8 = shiftr(right+left,1)
|
||||
! if (singles_alpha_csc_map%i1(k8) > lrow) then
|
||||
if (singles_alpha_csc(k8) > lrow) then
|
||||
right = k8
|
||||
! else if (singles_alpha_csc_map%i1(k8) < lrow) then
|
||||
else if (singles_alpha_csc(k8) < lrow) then
|
||||
left = k8 + 1_8
|
||||
else
|
||||
|
Loading…
Reference in New Issue
Block a user