From 5f12e8df838e23df6dbcc40d0f6459b3ea619ecd Mon Sep 17 00:00:00 2001 From: Philippe WAUTELET <philippe.wautelet@aero.obs-mip.fr> Date: Wed, 12 Jan 2022 15:09:38 +0100 Subject: [PATCH] Philippe 12/01/2022: OpenACC: remove unused dummy arguments of gradient_u subroutines --- src/MNH/gradient_u.f90 | 24 ++++++------------------ src/MNH/turb_hor_dyn_corr.f90 | 2 +- src/MNH/turb_hor_uv.f90 | 4 ++-- src/MNH/turb_hor_uw.f90 | 4 ++-- src/MNH/turb_ver_dyn_flux.f90 | 8 ++++---- src/ZSOLVER/turb_hor_dyn_corr.f90 | 2 +- 6 files changed, 16 insertions(+), 28 deletions(-) diff --git a/src/MNH/gradient_u.f90 b/src/MNH/gradient_u.f90 index 1721bdf08..c959eac3a 100644 --- a/src/MNH/gradient_u.f90 +++ b/src/MNH/gradient_u.f90 @@ -23,9 +23,7 @@ END FUNCTION GX_U_M ! ! #ifdef MNH_OPENACC -SUBROUTINE GX_U_M_DEVICE(KKA,KKU,KL,PA,PDXX,PDZZ,PDZX,PGX_U_M_DEVICE) -INTEGER, INTENT(IN) :: KKA, KKU ! near ground and uppest atmosphere array indexes -INTEGER, INTENT(IN) :: KL ! +1 if grid goes from ground to atmosphere top, -1 otherwise +SUBROUTINE GX_U_M_DEVICE(PA,PDXX,PDZZ,PDZX,PGX_U_M_DEVICE) REAL, DIMENSION(:,:,:), INTENT(IN) :: PA ! variable at the U point REAL, DIMENSION(:,:,:), INTENT(IN) :: PDXX ! metric coefficient dxx REAL, DIMENSION(:,:,:), INTENT(IN) :: PDZZ ! metric coefficient dzz @@ -50,9 +48,7 @@ END FUNCTION GY_U_UV ! ! #ifdef MNH_OPENACC -SUBROUTINE GY_U_UV_DEVICE(KKA,KKU,KL,PA,PDYY,PDZZ,PDZY,PGY_U_UV_DEVICE) -INTEGER, INTENT(IN) :: KKA, KKU ! near ground and uppest atmosphere array indexes -INTEGER, INTENT(IN) :: KL ! +1 if grid goes from ground to atmosphere top, -1 otherwise +SUBROUTINE GY_U_UV_DEVICE(PA,PDYY,PDZZ,PDZY,PGY_U_UV_DEVICE) REAL, DIMENSION(:,:,:), INTENT(IN) :: PA ! variable at the U point REAL, DIMENSION(:,:,:), INTENT(IN) :: PDYY ! metric coefficient dyy REAL, DIMENSION(:,:,:), INTENT(IN) :: PDZZ ! metric coefficient dzz @@ -75,9 +71,7 @@ END FUNCTION GZ_U_UW ! ! #ifdef MNH_OPENACC -SUBROUTINE GZ_U_UW_DEVICE(KKA,KKU,KL,PA,PDZZ,PGZ_U_UW_DEVICE) -INTEGER, INTENT(IN) :: KKA, KKU ! near ground and uppest atmosphere array indexes -INTEGER, INTENT(IN) :: KL ! +1 if grid goes from ground to atmosphere top, -1 otherwise +SUBROUTINE GZ_U_UW_DEVICE(PA,PDZZ,PGZ_U_UW_DEVICE) REAL, DIMENSION(:,:,:), INTENT(IN) :: PA ! variable at the U point REAL, DIMENSION(:,:,:), INTENT(IN) :: PDZZ ! metric coefficient dzz ! @@ -192,7 +186,7 @@ END FUNCTION GX_U_M ! #ifdef MNH_OPENACC ! ####################################################### - SUBROUTINE GX_U_M_DEVICE(KKA,KKU,KL,PA,PDXX,PDZZ,PDZX,PGX_U_M_DEVICE) + SUBROUTINE GX_U_M_DEVICE(PA,PDXX,PDZZ,PDZX,PGX_U_M_DEVICE) ! ####################################################### ! !* 0. DECLARATIONS @@ -208,8 +202,6 @@ IMPLICIT NONE ! !* 0.1 declarations of arguments and result ! -INTEGER, INTENT(IN) :: KKA, KKU ! near ground and uppest atmosphere array indexes -INTEGER, INTENT(IN) :: KL ! +1 if grid goes from ground to atmosphere top, -1 otherwise REAL, DIMENSION(:,:,:), INTENT(IN) :: PA ! variable at the U point REAL, DIMENSION(:,:,:), INTENT(IN) :: PDXX ! metric coefficient dxx REAL, DIMENSION(:,:,:), INTENT(IN) :: PDZZ ! metric coefficient dzz @@ -380,7 +372,7 @@ END FUNCTION GY_U_UV ! #ifdef MNH_OPENACC ! ######################################################### - SUBROUTINE GY_U_UV_DEVICE(KKA,KKU,KL,PA,PDYY,PDZZ,PDZY,PGY_U_UV_DEVICE) + SUBROUTINE GY_U_UV_DEVICE(PA,PDYY,PDZZ,PDZY,PGY_U_UV_DEVICE) ! ######################################################### ! !* 0. DECLARATIONS @@ -396,8 +388,6 @@ IMPLICIT NONE ! !* 0.1 declarations of arguments and result ! -INTEGER, INTENT(IN) :: KKA, KKU ! near ground and uppest atmosphere array indexes -INTEGER, INTENT(IN) :: KL ! +1 if grid goes from ground to atmosphere top, -1 otherwise REAL, DIMENSION(:,:,:), INTENT(IN) :: PA ! variable at the U point REAL, DIMENSION(:,:,:), INTENT(IN) :: PDYY ! metric coefficient dyy REAL, DIMENSION(:,:,:), INTENT(IN) :: PDZZ ! metric coefficient dzz @@ -561,7 +551,7 @@ END FUNCTION GZ_U_UW ! #ifdef MNH_OPENACC ! ####################################################### - SUBROUTINE GZ_U_UW_DEVICE(KKA,KKU,KL,PA,PDZZ,PGZ_U_UW_DEVICE) + SUBROUTINE GZ_U_UW_DEVICE(PA,PDZZ,PGZ_U_UW_DEVICE) ! ####################################################### ! !* 0. DECLARATIONS @@ -575,8 +565,6 @@ IMPLICIT NONE ! !* 0.1 declarations of arguments and result ! -INTEGER, INTENT(IN) :: KKA, KKU ! near ground and uppest atmosphere array indexes -INTEGER, INTENT(IN) :: KL ! +1 if grid goes from ground to atmosphere top, -1 otherwise REAL, DIMENSION(:,:,:), INTENT(IN) :: PA ! variable at the U point REAL, DIMENSION(:,:,:), INTENT(IN) :: PDZZ ! metric coefficient dzz ! diff --git a/src/MNH/turb_hor_dyn_corr.f90 b/src/MNH/turb_hor_dyn_corr.f90 index 5ce8a931f..2ac0e3d54 100644 --- a/src/MNH/turb_hor_dyn_corr.f90 +++ b/src/MNH/turb_hor_dyn_corr.f90 @@ -423,7 +423,7 @@ GZ_W_M_PWM = GZ_W_M(PWM,PDZZ) ! ZMZF_DZZ = MZF(PDZZ) #else -CALL GX_U_M_DEVICE(1,IKU,1,PUM,PDXX,PDZZ,PDZX,GX_U_M_PUM) +CALL GX_U_M_DEVICE(PUM,PDXX,PDZZ,PDZX,GX_U_M_PUM) IF (.NOT. L2D) THEN CALL GY_V_M_DEVICE(1,IKU,1,PVM,PDYY,PDZZ,PDZY,GY_V_M_PVM) END IF diff --git a/src/MNH/turb_hor_uv.f90 b/src/MNH/turb_hor_uv.f90 index 5027ccb57..e597f4f9b 100644 --- a/src/MNH/turb_hor_uv.f90 +++ b/src/MNH/turb_hor_uv.f90 @@ -342,7 +342,7 @@ END IF #else CALL GX_V_UV_DEVICE(1,IKU,1,PVM,PDXX,PDZZ,PDZX,GX_V_UV_PVM) IF (.NOT. L2D) THEN - CALL GY_U_UV_DEVICE(1,IKU,1,PUM,PDYY,PDZZ,PDZY,GY_U_UV_PUM) + CALL GY_U_UV_DEVICE(PUM,PDYY,PDZZ,PDZY,GY_U_UV_PUM) END IF #endif ! @@ -768,7 +768,7 @@ IF (LLES_CALL .AND. KSPLT==1) THEN CALL MXF_DEVICE(ZTMP1_DEVICE,ZTMP2_DEVICE) CALL LES_MEAN_SUBGRID(ZTMP2_DEVICE,X_LES_SUBGRID_UV) ! - CALL GY_U_UV_DEVICE(1,IKU,1,PUM,PDYY,PDZZ,PDZY,ZTMP1_DEVICE) + CALL GY_U_UV_DEVICE(PUM,PDYY,PDZZ,PDZY,ZTMP1_DEVICE) !$acc kernels ZTMP3_DEVICE = ZTMP1_DEVICE*ZFLX !$acc end kernels diff --git a/src/MNH/turb_hor_uw.f90 b/src/MNH/turb_hor_uw.f90 index f32af0bf9..c77be3a96 100644 --- a/src/MNH/turb_hor_uw.f90 +++ b/src/MNH/turb_hor_uw.f90 @@ -415,7 +415,7 @@ IF (KSPLT==1) THEN ZWORK(:,:,:) =-MZF( MXF( & ZFLX *( GZ_U_UW(PUM,PDZZ) + GX_W_UW_PWM ) ) ) #else - CALL GZ_U_UW_DEVICE(1,IKU,1,PUM,PDZZ,ZTMP1_DEVICE) + CALL GZ_U_UW_DEVICE(PUM,PDZZ,ZTMP1_DEVICE) !$acc kernels !$acc loop independent collapse(3) DO CONCURRENT ( JI=1:JIU,JJ=1:JJU,JK=1:JKU) @@ -505,7 +505,7 @@ IF (LLES_CALL .AND. KSPLT==1) THEN CALL MZF_DEVICE( ZTMP1_DEVICE, ZTMP2_DEVICE ) CALL LES_MEAN_SUBGRID( ZTMP2_DEVICE, X_LES_SUBGRID_WU , .TRUE. ) ! - CALL GZ_U_UW_DEVICE(1,IKU,1,PUM,PDZZ,ZTMP1_DEVICE) + CALL GZ_U_UW_DEVICE(PUM,PDZZ,ZTMP1_DEVICE) !$acc kernels ZTMP2_DEVICE = ZTMP1_DEVICE*ZFLX !$acc end kernels diff --git a/src/MNH/turb_ver_dyn_flux.f90 b/src/MNH/turb_ver_dyn_flux.f90 index 23c49fd17..1efb2d22c 100644 --- a/src/MNH/turb_ver_dyn_flux.f90 +++ b/src/MNH/turb_ver_dyn_flux.f90 @@ -798,7 +798,7 @@ PWU(:,:,:) = ZFLXZ(:,:,:) #ifndef MNH_OPENACC PDP(:,:,:) = - MZF( MXF ( ZFLXZ * GZ_U_UW(PUM,PDZZ) ) ) #else -CALL GZ_U_UW_DEVICE(KKA,KKU,KKL,PUM,PDZZ,ZTMP1_DEVICE) +CALL GZ_U_UW_DEVICE(PUM,PDZZ,ZTMP1_DEVICE) !$acc kernels !$acc loop independent collapse(3) DO CONCURRENT ( JI=1:JIU,JJ=1:JJU,JK=1:JKU ) @@ -854,7 +854,7 @@ IF (LLES_CALL) THEN CALL MZF_DEVICE( ZTMP1_DEVICE, ZTMP2_DEVICE ) CALL LES_MEAN_SUBGRID( ZTMP2_DEVICE, X_LES_SUBGRID_WU ) ! - CALL GZ_U_UW_DEVICE(KKA,KKU,KKL,PUM,PDZZ,ZTMP1_DEVICE) + CALL GZ_U_UW_DEVICE(PUM,PDZZ,ZTMP1_DEVICE) !$acc kernels ZTMP2_DEVICE(:,:,:) = ZTMP1_DEVICE(:,:,:)*ZFLXZ(:,:,:) !$acc end kernels @@ -1058,7 +1058,7 @@ END IF CALL LES_MEAN_SUBGRID( ZTMP4_DEVICE, X_LES_RES_ddxa_Thl_SBG_UaW ) ! IF (KRR>=1) THEN - CALL GX_U_M_DEVICE(KKA,KKU,KKL,PRM(:,:,:,1),PDXX,PDZZ,PDZX,ZTMP1_DEVICE) + CALL GX_U_M_DEVICE(PRM(:,:,:,1),PDXX,PDZZ,PDZX,ZTMP1_DEVICE) CALL MZF_DEVICE( ZFLXZ, ZTMP2_DEVICE ) !$acc kernels ZTMP3_DEVICE(:,:,:) = ZTMP1_DEVICE(:,:,:)*ZTMP2_DEVICE(:,:,:) @@ -1068,7 +1068,7 @@ END IF END IF ! DO JSV=1,NSV - CALL GX_U_M_DEVICE(KKA,KKU,KKL,PSVM(:,:,:,JSV),PDXX,PDZZ,PDZX,ZTMP1_DEVICE) + CALL GX_U_M_DEVICE(PSVM(:,:,:,JSV),PDXX,PDZZ,PDZX,ZTMP1_DEVICE) CALL MZF_DEVICE( ZFLXZ, ZTMP2_DEVICE ) !$acc kernels ZTMP3_DEVICE(:,:,:) = ZTMP1_DEVICE(:,:,:)*ZTMP2_DEVICE(:,:,:) diff --git a/src/ZSOLVER/turb_hor_dyn_corr.f90 b/src/ZSOLVER/turb_hor_dyn_corr.f90 index 18808749a..f44d4e47e 100644 --- a/src/ZSOLVER/turb_hor_dyn_corr.f90 +++ b/src/ZSOLVER/turb_hor_dyn_corr.f90 @@ -427,7 +427,7 @@ GZ_W_M_PWM = GZ_W_M(PWM,PDZZ) ! ZMZF_DZZ = MZF(PDZZ) #else -CALL GX_U_M_DEVICE(1,IKU,1,PUM,PDXX,PDZZ,PDZX,GX_U_M_PUM) +CALL GX_U_M_DEVICE(PUM,PDXX,PDZZ,PDZX,GX_U_M_PUM) IF (.NOT. L2D) THEN CALL GY_V_M_DEVICE(1,IKU,1,PVM,PDYY,PDZZ,PDZY,GY_V_M_PVM) END IF -- GitLab