diff --git a/src/ZSOLVER/dotprod.f90 b/src/ZSOLVER/dotprod.f90 index 48aa61fa0f337d559160960eb135fe9eec2c4f1e..e473801b82143326b3323affb757e60545074909 100644 --- a/src/ZSOLVER/dotprod.f90 +++ b/src/ZSOLVER/dotprod.f90 @@ -184,20 +184,16 @@ CALL MNH_MEM_POSITION_PIN() CALL MNH_MEM_GET(ZDOTPROD, ILBXB,ILBXE ,ILBYB,ILBYE ) #endif !$acc kernels present(ZDOTPROD) -ZDOTPROD = 0. -!$acc loop seq -DO JK = IKB-1,IKE+1 +ZDOTPROD(:,:) = 0. #ifdef MNH_COMPILER_NVHPC !$acc loop independent collapse(2) #endif -!dir$ doconcurrent - DO JJ = ILBYB,ILBYE - !dir$ doconcurrent - DO JI = ILBXB,ILBXE + DO CONCURRENT (JI=ILBXB:ILBXE,JJ=ILBYB:ILBYE) + !$acc loop seq + DO JK = IKB-1,IKE+1 ZDOTPROD(JI,JJ) = ZDOTPROD(JI,JJ) + PA(JI,JJ,JK) * PB(JI,JJ,JK) END DO END DO -END DO !$acc end kernels !$acc update host(ZDOTPROD) PDOTPROD = SUM_DD_R2_ll(ZDOTPROD)