From 16a247a77dab8760a11ba045896cf690253d030f Mon Sep 17 00:00:00 2001 From: Philippe WAUTELET <philippe.wautelet@aero.obs-mip.fr> Date: Wed, 12 Jan 2022 10:44:39 +0100 Subject: [PATCH] Philippe 12/01/2022: OpenACC: remove unused dummy arguments of DZM_DEVICE --- src/MNH/advecuvw_4th.f90 | 2 +- src/MNH/advecuvw_weno_k.f90 | 6 +++--- src/MNH/gradient_m.f90 | 8 ++++---- src/MNH/gradient_u.f90 | 8 ++++---- src/MNH/gradient_v.f90 | 8 ++++---- src/MNH/gradient_w.f90 | 4 ++-- src/MNH/shuman_device.f90 | 8 ++------ src/MNH/tke_eps_sources.f90 | 2 +- src/MNH/turb_hor_uw.f90 | 2 +- src/MNH/turb_hor_vw.f90 | 2 +- src/MNH/turb_ver_dyn_flux.f90 | 10 +++++----- src/MNH/turb_ver_thermo_corr.f90 | 18 +++++++++--------- src/MNH/turb_ver_thermo_flux.f90 | 12 ++++++------ src/ZSOLVER/advecuvw_weno_k.f90 | 8 ++++---- 14 files changed, 47 insertions(+), 51 deletions(-) diff --git a/src/MNH/advecuvw_4th.f90 b/src/MNH/advecuvw_4th.f90 index d90db2748..a921f7e84 100644 --- a/src/MNH/advecuvw_4th.f90 +++ b/src/MNH/advecuvw_4th.f90 @@ -404,7 +404,7 @@ ZTEMP2 = MZF4( PWT ) !$acc kernels ZTEMP1 = ZTEMP1 * ZTEMP2 !$acc end kernels -call dzm_device(1,IKU,1,ZTEMP1,ZTEMP4) +call dzm_device( ZTEMP1, ZTEMP4 ) !$acc kernels PRWS(:,:,:) = PRWS(:,:,:) - ZTEMP4 !$acc end kernels diff --git a/src/MNH/advecuvw_weno_k.f90 b/src/MNH/advecuvw_weno_k.f90 index 7a9ac0776..7c0a5a372 100644 --- a/src/MNH/advecuvw_weno_k.f90 +++ b/src/MNH/advecuvw_weno_k.f90 @@ -275,7 +275,7 @@ CASE(1) ! WENO 1 !PRWS = PRWS - DZM(1,IKU,1,UP_WZ(PWT,MZF(1,IKU,1,PRWCT))) CALL MZF_DEVICE(1,IKU,1,PRWCT,ZWORK) CALL UP_WZ_DEVICE(PWT,ZWORK,ZMEAN) - CALL DZM_DEVICE(1,IKU,1,ZMEAN,ZWORK) + CALL DZM_DEVICE( ZMEAN, ZWORK ) !$acc kernels PRWS(:,:,:) = PRWS(:,:,:) - ZWORK(:,:,:) !$acc end kernels @@ -432,7 +432,7 @@ CASE(3) ! WENO 3 ZT3D(:,:,:,IZFPOS1), ZT3D(:,:,:,IZFPOS2), ZT3D(:,:,:,IZFNEG1), ZT3D(:,:,:,IZFNEG2), & ZT3D(:,:,:,IZBPOS1), ZT3D(:,:,:,IZBPOS2), ZT3D(:,:,:,IZBNEG1), ZT3D(:,:,:,IZBNEG2), & ZT3D(:,:,:,IZOMP1), ZT3D(:,:,:,IZOMP2), ZT3D(:,:,:,IZOMN1), ZT3D(:,:,:,IZOMN2) ) - CALL DZM_DEVICE(1,IKU,1,ZMEAN,ZWORK) + CALL DZM_DEVICE( ZMEAN, ZWORK ) !$acc kernels PRWS(:,:,:) = PRWS(:,:,:) - ZWORK(:,:,:) !$acc end kernels @@ -636,7 +636,7 @@ CASE(5) ! WENO 5 ZT3D(:,:,:,IZOMP1), ZT3D(:,:,:,IZOMP2), ZT3D(:,:,:,IZOMP3), & ZT3D(:,:,:,IZOMN1), ZT3D(:,:,:,IZOMN2), ZT3D(:,:,:,IZOMN3) ) CALL GET_HALO_D(ZMEAN)! Update HALO - maybe not necessary (T.Lunet) - CALL DZM_DEVICE(1,IKU,1,ZMEAN,ZWORK) + CALL DZM_DEVICE( ZMEAN, ZWORK ) !$acc kernels PRWS(:,:,:) = PRWS(:,:,:) - ZWORK(:,:,:) !$acc end kernels diff --git a/src/MNH/gradient_m.f90 b/src/MNH/gradient_m.f90 index 5707e8a7b..79569e438 100644 --- a/src/MNH/gradient_m.f90 +++ b/src/MNH/gradient_m.f90 @@ -1,4 +1,4 @@ -!MNH_LIC Copyright 1994-2020 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC Copyright 1994-2022 CNRS, Meteo-France and Universite Paul Sabatier !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt !MNH_LIC for details. version 1. @@ -320,7 +320,7 @@ IF (.NOT. LFLAT) THEN CALL MXM_DEVICE(PA(:,:,:),ZT3D(:,:,:,IDX1)) CALL DXF_DEVICE(ZT3D(:,:,:,IDX1),ZT3D(:,:,:,IDX2)) CALL MXF_DEVICE(PDZX,ZT3D(:,:,:,IDX1)) - CALL DZM_DEVICE(KKA,KKU,KL,PA(:,:,:),ZT3D(:,:,:,IDX3)) + CALL DZM_DEVICE( PA(:,:,:), ZT3D(:,:,:,IDX3) ) !$acc kernels ZT3D(:,:,:,IDX4) = ZT3D(:,:,:,IDX1)*ZT3D(:,:,:,IDX3)/PDZZ(:,:,:) !$acc end kernels @@ -489,7 +489,7 @@ IF (.NOT. LFLAT) THEN CALL MYM_DEVICE(PA,ZT3D(:,:,:,IDX1)) CALL DYF_DEVICE(ZT3D(:,:,:,IDX1),ZT3D(:,:,:,IDX2)) CALL MYF_DEVICE(PDZY,ZT3D(:,:,:,IDX1)) - CALL DZM_DEVICE(KKA,KKU,KL,PA,ZT3D(:,:,:,IDX3)) + CALL DZM_DEVICE( PA, ZT3D(:,:,:,IDX3) ) !$acc kernels ZT3D(:,:,:,IDX4) = ZT3D(:,:,:,IDX1)*ZT3D(:,:,:,IDX3)/PDZZ !$acc end kernels @@ -639,7 +639,7 @@ CALL MNH_GET_ZT3D(IDX1,IDX2) !* 1. DEFINITION of GZ_M_M ! -------------------- ! -CALL DZM_DEVICE(KKA,KKU,KL,PA(:,:,:),ZT3D(:,:,:,IDX1)) +CALL DZM_DEVICE( PA(:,:,:), ZT3D(:,:,:,IDX1) ) !$acc kernels ZT3D(:,:,:,IDX2) = ZT3D(:,:,:,IDX1)/PDZZ(:,:,:) !$acc end kernels diff --git a/src/MNH/gradient_u.f90 b/src/MNH/gradient_u.f90 index a45e5903f..35bc55f48 100644 --- a/src/MNH/gradient_u.f90 +++ b/src/MNH/gradient_u.f90 @@ -1,4 +1,4 @@ -!MNH_LIC Copyright 1994-2020 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC Copyright 1994-2022 CNRS, Meteo-France and Universite Paul Sabatier !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt !MNH_LIC for details. version 1. @@ -243,7 +243,7 @@ iztmp3_device = MNH_ALLOCATE_ZT3D( ztmp3_device,JIU,JJU,JKU ) ! -------------------- IF (.NOT. LFLAT) THEN CALL DXF_DEVICE(PA,ZTMP1_DEVICE) - CALL DZM_DEVICE(KKA,KKU,KL,PA,ZTMP2_DEVICE) + CALL DZM_DEVICE( PA, ZTMP2_DEVICE ) !$acc kernels !$acc loop independent collapse(3) DO CONCURRENT ( JI=1:JIU,JJ=1:JJU,JK=1:JKU) @@ -433,7 +433,7 @@ iztmp3_device = MNH_ALLOCATE_ZT3D( ztmp3_device,JIU,JJU,JKU ) ! --------------------- ! IF (.NOT. LFLAT) THEN - CALL DZM_DEVICE(KKA,KKU,KL,PA,ZTMP1_DEVICE) + CALL DZM_DEVICE( PA, ZTMP1_DEVICE ) CALL MXM_DEVICE(PDZZ,ZTMP2_DEVICE) !$acc kernels !$acc loop independent collapse(3) @@ -605,7 +605,7 @@ iztmp2_device = MNH_ALLOCATE_ZT3D( ztmp2_device,JIU,JJU,JKU ) !* 1. DEFINITION of GZ_U_UW_DEVICE ! --------------------- ! -CALL DZM_DEVICE(KKA,KKU,KL,PA,ZTMP1_DEVICE) +CALL DZM_DEVICE( PA, ZTMP1_DEVICE ) CALL MXM_DEVICE(PDZZ,ZTMP2_DEVICE) !$acc kernels PGZ_U_UW_DEVICE(:,:,:)= ZTMP1_DEVICE(:,:,:) / ZTMP2_DEVICE(:,:,:) diff --git a/src/MNH/gradient_v.f90 b/src/MNH/gradient_v.f90 index 2a7742d33..dcf283fe8 100644 --- a/src/MNH/gradient_v.f90 +++ b/src/MNH/gradient_v.f90 @@ -1,4 +1,4 @@ -!MNH_LIC Copyright 1994-2020 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC Copyright 1994-2022 CNRS, Meteo-France and Universite Paul Sabatier !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt !MNH_LIC for details. version 1. @@ -245,7 +245,7 @@ iztmp3_device = MNH_ALLOCATE_ZT3D( ztmp3_device,JIU,JJU,JKU ) ! IF (.NOT. LFLAT) THEN CALL DYF_DEVICE(PA,ZTMP1_DEVICE) - CALL DZM_DEVICE(KKA,KKU,KL,PA,ZTMP2_DEVICE) + CALL DZM_DEVICE( PA, ZTMP2_DEVICE ) !$acc kernels !$acc loop independent collapse(3) DO CONCURRENT ( JI=1:JIU,JJ=1:JJU,JK=1:JKU) @@ -435,7 +435,7 @@ iztmp4_device = MNH_ALLOCATE_ZT3D( ztmp4_device,JIU,JJU,JKU ) IF (.NOT. LFLAT) THEN CALL DXM_DEVICE(PA,ZTMP1_DEVICE) CALL MYM_DEVICE(PDZZ,ZTMP2_DEVICE) - CALL DZM_DEVICE(KKA,KKU,KL,PA,ZTMP3_DEVICE) + CALL DZM_DEVICE( PA, ZTMP3_DEVICE ) !$acc kernels !$acc loop independent collapse(3) DO CONCURRENT ( JI=1:JIU,JJ=1:JJU,JK=1:JKU) @@ -607,7 +607,7 @@ iztmp2_device = MNH_ALLOCATE_ZT3D( ztmp2_device,JIU,JJU,JKU ) !* 1. DEFINITION of GZ_V_VW_DEVICE ! --------------------- ! -CALL DZM_DEVICE(KKA,KKU,KL,PA,ZTMP1_DEVICE) +CALL DZM_DEVICE( PA, ZTMP1_DEVICE ) CALL MYM_DEVICE(PDZZ,ZTMP2_DEVICE) !$acc kernels PGZ_V_VW_DEVICE(:,:,:)= ZTMP1_DEVICE(:,:,:) / ZTMP2_DEVICE(:,:,:) diff --git a/src/MNH/gradient_w.f90 b/src/MNH/gradient_w.f90 index 9f0c4291a..03f070203 100644 --- a/src/MNH/gradient_w.f90 +++ b/src/MNH/gradient_w.f90 @@ -379,7 +379,7 @@ IF (.NOT. LFLAT) THEN ! CALL MZF_DEVICE(KKA,KKU,KL,PA(:,:,:),ZTMP3_DEVICE) CALL MXM_DEVICE(ZTMP3_DEVICE,ZTMP4_DEVICE) - CALL DZM_DEVICE(KKA,KKU,KL,ZTMP4_DEVICE,ZTMP3_DEVICE) + CALL DZM_DEVICE( ZTMP4_DEVICE, ZTMP3_DEVICE ) ! CALL MZM_DEVICE(PDXX(:,:,:),ZTMP4_DEVICE) CALL MXM_DEVICE(PDZZ(:,:,:),ZTMP5_DEVICE) @@ -553,7 +553,7 @@ IF (.NOT. LFLAT) THEN ! CALL MZF_DEVICE(KKA,KKU,KL,PA(:,:,:),ZTMP3_DEVICE) CALL MYM_DEVICE(ZTMP3_DEVICE,ZTMP4_DEVICE) - CALL DZM_DEVICE(KKA,KKU,KL,ZTMP4_DEVICE,ZTMP3_DEVICE) + CALL DZM_DEVICE( ZTMP4_DEVICE, ZTMP3_DEVICE ) ! CALL MZM_DEVICE(PDYY(:,:,:),ZTMP4_DEVICE) CALL MYM_DEVICE(PDZZ(:,:,:),ZTMP5_DEVICE) diff --git a/src/MNH/shuman_device.f90 b/src/MNH/shuman_device.f90 index 35b622525..d67c815e3 100644 --- a/src/MNH/shuman_device.f90 +++ b/src/MNH/shuman_device.f90 @@ -35,9 +35,7 @@ REAL, DIMENSION(:,:,:), INTENT(IN) :: PA ! variable at flux side REAL, DIMENSION(:,:,:), INTENT(OUT) :: PDZF ! result at mass localization END SUBROUTINE DZF_DEVICE ! -SUBROUTINE DZM_DEVICE(KKA,KKU,KL,PA,PDZM) -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 DZM_DEVICE(PA,PDZM) REAL, DIMENSION(:,:,:), INTENT(IN) :: PA ! variable at mass localization REAL, DIMENSION(:,:,:), INTENT(OUT) :: PDZM ! result at flux side END SUBROUTINE DZM_DEVICE @@ -1386,7 +1384,7 @@ END DO END SUBROUTINE DZF_DEVICE ! ! ############################### - SUBROUTINE DZM_DEVICE(KKA,KKU,KL,PA,PDZM) + SUBROUTINE DZM_DEVICE(PA,PDZM) ! ############################### ! !!**** *DZM* - Shuman operator : finite difference operator in z direction @@ -1436,8 +1434,6 @@ IMPLICIT NONE !* 0.1 Declarations of argument 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 mass localization REAL, DIMENSION(:,:,:), INTENT(OUT) :: PDZM ! result at flux side ! diff --git a/src/MNH/tke_eps_sources.f90 b/src/MNH/tke_eps_sources.f90 index 5385bdf08..0de226669 100644 --- a/src/MNH/tke_eps_sources.f90 +++ b/src/MNH/tke_eps_sources.f90 @@ -479,7 +479,7 @@ IF ( LLES_CALL .OR. & !$acc kernels ZTMP3_DEVICE(:,:,:) = PIMPL * ZRES(:,:,:) + PEXPL * PTKEM(:,:,:) !$acc end kernels - CALL DZM_DEVICE(KKA,KKU,KKL,ZTMP3_DEVICE,ZTMP4_DEVICE) + CALL DZM_DEVICE( ZTMP3_DEVICE, ZTMP4_DEVICE ) !$acc kernels ZFLX(:,:,:) = - XCET * ZTMP1_DEVICE(:,:,:) * ZTMP4_DEVICE(:,:,:) / PDZZ(:,:,:) !Re-use of ZTMP1_DEVICE #endif diff --git a/src/MNH/turb_hor_uw.f90 b/src/MNH/turb_hor_uw.f90 index 8978148b5..9b4d26e4e 100644 --- a/src/MNH/turb_hor_uw.f90 +++ b/src/MNH/turb_hor_uw.f90 @@ -391,7 +391,7 @@ IF (.NOT. LFLAT) THEN ZTMP4_DEVICE(JI,JJ,JK) = PRHODJ(JI,JJ,JK) * ZTMP3_DEVICE(JI,JJ,JK) / ZTMP2_DEVICE(JI,JJ,JK) END DO !CONCURRENT !$acc end kernels - CALL DZM_DEVICE(1,IKU,1, ZTMP4_DEVICE, ZTMP2_DEVICE ) + CALL DZM_DEVICE( ZTMP4_DEVICE, ZTMP2_DEVICE ) !$acc kernels !$acc loop independent collapse(3) DO CONCURRENT ( JI=1:JIU,JJ=1:JJU,JK=1:JKU) diff --git a/src/MNH/turb_hor_vw.f90 b/src/MNH/turb_hor_vw.f90 index 271f793be..68935ec33 100644 --- a/src/MNH/turb_hor_vw.f90 +++ b/src/MNH/turb_hor_vw.f90 @@ -402,7 +402,7 @@ IF (.NOT. L2D) THEN ZTMP4_DEVICE(JI,JJ,JK) = PRHODJ(JI,JJ,JK) * ZTMP3_DEVICE(JI,JJ,JK) / ZTMP2_DEVICE(JI,JJ,JK) END DO !CONCURRENT !$acc end kernels - CALL DZM_DEVICE(1,IKU,1,ZTMP4_DEVICE,ZTMP2_DEVICE) + CALL DZM_DEVICE( ZTMP4_DEVICE, ZTMP2_DEVICE ) !$acc kernels !$acc loop independent collapse(3) DO CONCURRENT ( JI=1:JIU,JJ=1:JJU,JK=1:JKU) diff --git a/src/MNH/turb_ver_dyn_flux.f90 b/src/MNH/turb_ver_dyn_flux.f90 index 34a0a0ab7..ff2d88b75 100644 --- a/src/MNH/turb_ver_dyn_flux.f90 +++ b/src/MNH/turb_ver_dyn_flux.f90 @@ -1,4 +1,4 @@ -!MNH_LIC Copyright 1994-2021 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC Copyright 1994-2022 CNRS, Meteo-France and Universite Paul Sabatier !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt !MNH_LIC for details. version 1. @@ -733,7 +733,7 @@ DO CONCURRENT ( JI=1:JIU,JJ=1:JJU,JK=1:JKU) END DO !$acc end kernels CALL MXM_DEVICE(ZKEFF,ZTMP1_DEVICE) -CALL DZM_DEVICE(KKA,KKU,KKL,ZTMP2_DEVICE,ZTMP3_DEVICE) +CALL DZM_DEVICE( ZTMP2_DEVICE, ZTMP3_DEVICE ) CALL MXM_DEVICE(PDZZ,ZTMP4_DEVICE) !$acc kernels !$acc loop independent collapse(3) @@ -934,7 +934,7 @@ IF(HTURBDIM=='3DIM') THEN ZTMP3_DEVICE(JI,JJ,JK) = PRHODJ(JI,JJ,JK) / ZTMP2_DEVICE(JI,JJ,JK) * ZTMP4_DEVICE(JI,JJ,JK) END DO !$acc end kernels - CALL DZM_DEVICE(KKA,KKU,KKL, ZTMP3_DEVICE,ZTMP2_DEVICE) + CALL DZM_DEVICE( ZTMP3_DEVICE, ZTMP2_DEVICE ) !$acc kernels PRWS(:,:,:)= PRWS(:,:,:) - ZTMP1_DEVICE(:,:,:) + ZTMP2_DEVICE(:,:,:) !$acc end kernels @@ -1257,7 +1257,7 @@ DO CONCURRENT ( JI=1:JIU,JJ=1:JJU,JK=1:JKU) ZTMP1_DEVICE(JI,JJ,JK) = PIMPL*ZRES(JI,JJ,JK) + PEXPL*PVM(JI,JJ,JK) END DO !$acc end kernels -CALL DZM_DEVICE(KKA,KKU,KKL,ZTMP1_DEVICE,ZTMP2_DEVICE) +CALL DZM_DEVICE( ZTMP1_DEVICE, ZTMP2_DEVICE ) CALL MYM_DEVICE(PDZZ,ZTMP3_DEVICE) CALL MYM_DEVICE(ZKEFF,ZTMP1_DEVICE) !$acc kernels @@ -1454,7 +1454,7 @@ IF(HTURBDIM=='3DIM') THEN ZTMP3_DEVICE(JI,JJ,JK) = PRHODJ(JI,JJ,JK) / ZTMP2_DEVICE(JI,JJ,JK) * ZTMP4_DEVICE(JI,JJ,JK) END DO !$acc end kernels - CALL DZM_DEVICE(KKA,KKU,KKL,ZTMP3_DEVICE, ZTMP4_DEVICE) + CALL DZM_DEVICE( ZTMP3_DEVICE, ZTMP4_DEVICE ) !$acc kernels PRWS(:,:,:)= PRWS(:,:,:) - ZTMP1_DEVICE(:,:,:) + ZTMP4_DEVICE(:,:,:) !$acc end kernels diff --git a/src/MNH/turb_ver_thermo_corr.f90 b/src/MNH/turb_ver_thermo_corr.f90 index 4ed095dd3..a70de0a3e 100644 --- a/src/MNH/turb_ver_thermo_corr.f90 +++ b/src/MNH/turb_ver_thermo_corr.f90 @@ -1,4 +1,4 @@ -!MNH_LIC Copyright 1994-2021 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC Copyright 1994-2022 CNRS, Meteo-France and Universite Paul Sabatier !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt !MNH_LIC for details. version 1. @@ -720,7 +720,7 @@ END IF !$acc kernels ZTMP1_DEVICE(:,:,:) = PTHLP(:,:,:) - PTHLM(:,:,:) !$acc end kernels - CALL DZM_DEVICE(KKA,KKU,KKL,ZTMP1_DEVICE(:,:,:),ZTMP2_DEVICE(:,:,:)) + CALL DZM_DEVICE( ZTMP1_DEVICE(:,:,:), ZTMP2_DEVICE(:,:,:) ) !$acc kernels !$acc loop independent collapse(3) DO CONCURRENT ( JI=1:JIU,JJ=1:JJU,JK=1:JKU) @@ -1038,8 +1038,8 @@ END IF ZTMP1_DEVICE(:,:,:) = PTHLP(:,:,:) - PTHLM(:,:,:) ZTMP2_DEVICE(:,:,:) = PRP(:,:,:) - PRM(:,:,:,1) !$acc end kernels - CALL DZM_DEVICE(KKA,KKU,KKL,ZTMP1_DEVICE(:,:,:),ZTMP3_DEVICE(:,:,:)) - CALL DZM_DEVICE(KKA,KKU,KKL,ZTMP2_DEVICE(:,:,:),ZTMP4_DEVICE(:,:,:)) + CALL DZM_DEVICE( ZTMP1_DEVICE(:,:,:), ZTMP3_DEVICE(:,:,:) ) + CALL DZM_DEVICE( ZTMP2_DEVICE(:,:,:), ZTMP4_DEVICE(:,:,:) ) !$acc kernels !$acc loop independent collapse(3) DO CONCURRENT ( JI=1:JIU,JJ=1:JJU,JK=1:JKU) @@ -1060,8 +1060,8 @@ END IF ZTMP1_DEVICE(:,:,:) = PTHLP(:,:,:) - PTHLM(:,:,:) ZTMP8_DEVICE(:,:,:) = PRP(:,:,:) - PRM(:,:,:,1) !$acc end kernels - CALL DZM_DEVICE(KKA,KKU,KKL,ZTMP1_DEVICE(:,:,:),ZTMP2_DEVICE(:,:,:)) - CALL DZM_DEVICE(KKA,KKU,KKL,ZTMP8_DEVICE(:,:,:),ZTMP1_DEVICE(:,:,:)) + CALL DZM_DEVICE( ZTMP1_DEVICE(:,:,:), ZTMP2_DEVICE(:,:,:) ) + CALL DZM_DEVICE( ZTMP8_DEVICE(:,:,:), ZTMP1_DEVICE(:,:,:) ) !!! !$acc kernels !$acc loop independent collapse(3) @@ -1077,8 +1077,8 @@ END IF ZTMP1_DEVICE(:,:,:) = PTHLP(:,:,:) - PTHLM(:,:,:) ZTMP2_DEVICE(:,:,:) = PRP(:,:,:) - PRM(:,:,:,1) !$acc end kernels - CALL DZM_DEVICE(KKA,KKU,KKL,ZTMP1_DEVICE(:,:,:),ZTMP3_DEVICE(:,:,:)) - CALL DZM_DEVICE(KKA,KKU,KKL,ZTMP2_DEVICE(:,:,:),ZTMP4_DEVICE(:,:,:)) + CALL DZM_DEVICE( ZTMP1_DEVICE(:,:,:), ZTMP3_DEVICE(:,:,:) ) + CALL DZM_DEVICE( ZTMP2_DEVICE(:,:,:), ZTMP4_DEVICE(:,:,:) ) !$acc kernels !$acc loop independent collapse(3) DO CONCURRENT ( JI=1:JIU,JJ=1:JJU,JK=1:JKU) @@ -1368,7 +1368,7 @@ END IF !$acc kernels ZTMP2_DEVICE(:,:,:) = PRP(:,:,:) - PRM(:,:,:,1) !$acc end kernels - CALL DZM_DEVICE(KKA,KKU,KKL,ZTMP2_DEVICE(:,:,:),ZTMP3_DEVICE(:,:,:)) + CALL DZM_DEVICE( ZTMP2_DEVICE(:,:,:), ZTMP3_DEVICE(:,:,:) ) !$acc kernels !$acc loop independent collapse(3) DO CONCURRENT ( JI=1:JIU,JJ=1:JJU,JK=1:JKU) diff --git a/src/MNH/turb_ver_thermo_flux.f90 b/src/MNH/turb_ver_thermo_flux.f90 index a07475911..9fe38eb70 100644 --- a/src/MNH/turb_ver_thermo_flux.f90 +++ b/src/MNH/turb_ver_thermo_flux.f90 @@ -740,7 +740,7 @@ END IF ZF (:,:,:) = -XCSHF*PPHI3(:,:,:)*ZKEFF(:,:,:)*DZM(PTHLM)/PDZZ(:,:,:) ZDFDDTDZ(:,:,:) = -XCSHF*ZKEFF(:,:,:)*D_PHI3DTDZ_O_DDTDZ(PPHI3,PREDTH1,PREDR1,PRED2TH3,PRED2THR3,HTURBDIM,GUSERV) #else -CALL DZM_DEVICE(KKA,KKU,KKL,PTHLM,ZTMP1_DEVICE) +CALL DZM_DEVICE(PTHLM, ZTMP1_DEVICE ) !$acc kernels !$acc loop independent collapse(3) DO CONCURRENT ( JI=1:JIU,JJ=1:JJU,JK=1:JKU) @@ -971,7 +971,7 @@ ZFLXZ(:,:,:) = ZF(:,:,:) & !$acc kernels ZTMP1_DEVICE(:,:,:) = PTHLP(:,:,:) - PTHLM(:,:,:) !$acc end kernels -CALL DZM_DEVICE(KKA,KKU,KKL,ZTMP1_DEVICE,ZTMP2_DEVICE) +CALL DZM_DEVICE( ZTMP1_DEVICE, ZTMP2_DEVICE ) !$acc kernels !$acc loop independent collapse(3) DO CONCURRENT ( JI=1:JIU,JJ=1:JJU,JK=1:JKU) @@ -1187,7 +1187,7 @@ IF (LLES_CALL) THEN CALL LES_MEAN_SUBGRID( ZTMP2_DEVICE, X_LES_RES_ddxa_Rt_SBG_UaThl ) END IF !* diagnostic of mixing coefficient for heat - CALL DZM_DEVICE(KKA,KKU,KKL,PTHLP,ZA) + CALL DZM_DEVICE( PTHLP, ZA ) !$acc kernels DO CONCURRENT ( JI=1:JIU,JJ=1:JJU,JK=1:JKU) IF (ZA(JI,JJ,JK)==0.) THEN @@ -1232,7 +1232,7 @@ IF (KRR /= 0) THEN ZF (:,:,:) = -XCSHF*PPSI3(:,:,:)*ZKEFF(:,:,:)*DZM(PRM(:,:,:,1))/PDZZ(:,:,:) ZDFDDRDZ(:,:,:) = -XCSHF*ZKEFF(:,:,:)*D_PSI3DRDZ_O_DDRDZ(PPSI3,PREDR1,PREDTH1,PRED2R3,PRED2THR3,HTURBDIM,GUSERV) #else - CALL DZM_DEVICE(KKA,KKU,KKL,PRM(:,:,:,1),ZTMP1_DEVICE) + CALL DZM_DEVICE( PRM(:,:,:,1), ZTMP1_DEVICE ) !$acc kernels !$acc loop independent collapse(3) DO CONCURRENT ( JI=1:JIU,JJ=1:JJU,JK=1:JKU) @@ -1467,7 +1467,7 @@ IF (KRR /= 0) THEN !$acc kernels ZTMP1_DEVICE(:,:,:) = PRP(:,:,:) - PRM(:,:,:,1) !$acc end kernels - CALL DZM_DEVICE(KKA,KKU,KKL,ZTMP1_DEVICE,ZTMP2_DEVICE) + CALL DZM_DEVICE( ZTMP1_DEVICE, ZTMP2_DEVICE ) !$acc kernels !$acc loop independent collapse(3) DO CONCURRENT ( JI=1:JIU,JJ=1:JJU,JK=1:JKU) @@ -1694,7 +1694,7 @@ IF ( ((OTURB_FLX .AND. tpfile%lopened) .OR. LLES_CALL) .AND. (KRRL > 0) ) THEN !$acc kernels ZTMP1_DEVICE(:,:,:) = PIMPL * PTHLP(:,:,:) + PEXPL * PTHLM(:,:,:) !$acc end kernels - CALL DZM_DEVICE(KKA,KKU,KKL,ZTMP1_DEVICE,ZTMP2_DEVICE) + CALL DZM_DEVICE( ZTMP1_DEVICE, ZTMP2_DEVICE ) !$acc kernels ZTMP3_DEVICE(:,:,:) = PLM(:,:,:)*PSQRT_TKE(:,:,:) !$acc end kernels diff --git a/src/ZSOLVER/advecuvw_weno_k.f90 b/src/ZSOLVER/advecuvw_weno_k.f90 index 9535df3c9..3bcd61443 100644 --- a/src/ZSOLVER/advecuvw_weno_k.f90 +++ b/src/ZSOLVER/advecuvw_weno_k.f90 @@ -1,4 +1,4 @@ -!MNH_LIC Copyright 2013-2020 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC Copyright 2013-2022 CNRS, Meteo-France and Universite Paul Sabatier !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt !MNH_LIC for details. version 1. @@ -287,7 +287,7 @@ CASE(1) ! WENO 1 !PRWS = PRWS - DZM(1,IKU,1,UP_WZ(PWT,MZF(1,IKU,1,PRWCT))) CALL MZF_DEVICE(1,IKU,1,PRWCT,ZWORK) CALL UP_WZ_DEVICE(PWT,ZWORK,ZMEAN) - CALL DZM_DEVICE(1,IKU,1,ZMEAN,ZWORK) + CALL DZM_DEVICE( ZMEAN, ZWORK ) !$acc kernels PRWS(:,:,:) = PRWS(:,:,:) - ZWORK(:,:,:) !$acc end kernels @@ -444,7 +444,7 @@ CASE(3) ! WENO 3 ZT3D(:,:,:,IZFPOS1), ZT3D(:,:,:,IZFPOS2), ZT3D(:,:,:,IZFNEG1), ZT3D(:,:,:,IZFNEG2), & ZT3D(:,:,:,IZBPOS1), ZT3D(:,:,:,IZBPOS2), ZT3D(:,:,:,IZBNEG1), ZT3D(:,:,:,IZBNEG2), & ZT3D(:,:,:,IZOMP1), ZT3D(:,:,:,IZOMP2), ZT3D(:,:,:,IZOMN1), ZT3D(:,:,:,IZOMN2) ) - CALL DZM_DEVICE(1,IKU,1,ZMEAN,ZWORK) + CALL DZM_DEVICE( ZMEAN, ZWORK ) !$acc kernels PRWS(:,:,:) = PRWS(:,:,:) - ZWORK(:,:,:) !$acc end kernels @@ -648,7 +648,7 @@ CASE(5) ! WENO 5 ZT3D(:,:,:,IZOMP1), ZT3D(:,:,:,IZOMP2), ZT3D(:,:,:,IZOMP3), & ZT3D(:,:,:,IZOMN1), ZT3D(:,:,:,IZOMN2), ZT3D(:,:,:,IZOMN3) ) CALL GET_HALO_D(ZMEAN)! Update HALO - maybe not necessary (T.Lunet) - CALL DZM_DEVICE(1,IKU,1,ZMEAN,ZWORK) + CALL DZM_DEVICE( ZMEAN, ZWORK ) !$acc kernels PRWS(:,:,:) = PRWS(:,:,:) - ZWORK(:,:,:) !$acc end kernels -- GitLab