Removed temporary workaround for scratch space allocation problems

This commit is contained in:
Pietro Bonfa 2019-04-16 19:12:26 +02:00
parent 71cc091714
commit 2f1d2de3c4
1 changed files with 7 additions and 3 deletions

View File

@ -77,7 +77,7 @@ SUBROUTINE addusdens_g_gpu(rho)
REAL(DP), POINTER :: qmod_d (:), ylmk0_d (:,:)
! modulus of G, spherical harmonics
COMPLEX(DP), POINTER :: skk_d(:,:)
COMPLEX(DP), ALLOCATABLE :: aux2_d(:,:)
COMPLEX(DP), POINTER :: aux2_d(:,:)
! structure factors, US contribution to rho
COMPLEX(DP), POINTER :: aux_d (:,:), qgm_d(:)
COMPLEX(DP), POINTER :: aux_h (:,:)
@ -123,6 +123,10 @@ SUBROUTINE addusdens_g_gpu(rho)
qmod_d (ig) = sqrt (gg_d (ngm_s+ig-1) )
ENDDO
!
! Use largest size for buffer
nij = nhm*(nhm+1)/2
CALL dev_buf%prepare_buffer(aux2_d, (/ ngm_l,nij /), ierr )
!
DO nt = 1, ntyp
IF ( upf(nt)%tvanp ) THEN
!
@ -140,7 +144,7 @@ SUBROUTINE addusdens_g_gpu(rho)
!ALLOCATE ( skk_d(ngm_l,nab), tbecsum_d(nij,nab,nspin_mag), aux2_d(ngm_l,nij) )
CALL dev_buf%lock_buffer(skk_d, (/ ngm_l,nab /), ierr)
CALL dev_buf%lock_buffer(tbecsum_d, (/ nij,nab,nspin_mag /), ierr )
ALLOCATE( aux2_d(ngm_l,nij) ) ! CALL dev_buf%lock_buffer(aux2_d, (/ ngm_l,nij /), ierr )
CALL dev_buf%lock_buffer(aux2_d, (/ ngm_l,nij /), ierr )
!
nb = 0
DO na = 1, nat
@ -184,7 +188,7 @@ SUBROUTINE addusdens_g_gpu(rho)
!DEALLOCATE (aux2_d, tbecsum_d, skk_d )
CALL dev_buf%release_buffer(skk_d, ierr)
CALL dev_buf%release_buffer(tbecsum_d, ierr)
DEALLOCATE (aux2_d) !CALL dev_buf%release_buffer(aux2_d, ierr)
CALL dev_buf%release_buffer(aux2_d, ierr)
ENDIF
ENDDO
!