Skip to content
Snippets Groups Projects
Commit 9e8a28db authored by ESCOBAR MUNOZ Juan's avatar ESCOBAR MUNOZ Juan
Browse files

Juan 04/11/2022:ZSOLVER/turb_hor_dyn_corr.f90 , CCE > 14.X Optimization ,...

Juan 04/11/2022:ZSOLVER/turb_hor_dyn_corr.f90 , CCE > 14.X Optimization , Inhibe BR_P2, not needed for bitreproductibility with Cray Compiler
parent 10979ce6
No related branches found
No related tags found
No related merge requests found
......@@ -177,7 +177,7 @@ USE MODI_TRIDIAG_W
#if defined(MNH_BITREP) || defined(MNH_BITREP_OMP)
USE MODI_BITREP
#endif
#ifdef MNH_BITREP_OMP
#ifdef MNH_COMPILER_CCE
!$mnh_undef(LOOP)
!$mnh_undef(OPENACC)
#endif
......@@ -399,7 +399,8 @@ IKU = SIZE(PUM,3)
!
!
!$acc kernels async(1)
#if !defined(MNH_BITREP) && !defined(MNH_BITREP_OMP)
!if !defined(MNH_BITREP) && !defined(MNH_BITREP_OMP)
#if !defined(MNH_BITREP)
ZDIRSINZW(:,:) = SQRT( 1. - PDIRCOSZW(:,:)**2 )
#else
!$mnh_expand_array(JI=1:JIU,JJ=1:JJU )
......@@ -623,8 +624,9 @@ CALL MYF_DEVICE(PDYY(:,:,IKB:IKB),ZTMP4_DEVICE(:,:,1:1))
!!! wait for the computation of ZDIRSINZW
!$acc wait(1)
!
!$acc kernels async(4) present_cr(ZFLX,ZDIRSINZW)
#if !defined(MNH_BITREP) && !defined(MNH_BITREP_OMP)
!$acc kernels async(4) present_cr(ZFLX,ZDIRSINZW)
!if !defined(MNH_BITREP) && !defined(MNH_BITREP_OMP)
#if !defined(MNH_BITREP)
ZFLX(:,:,IKB-1) = &
PTAU11M(:,:) * PCOSSLOPE(:,:)**2 * PDIRCOSZW(:,:)**2 &
-2. * PTAU12M(:,:) * PCOSSLOPE(:,:)* PSINSLOPE(:,:) * PDIRCOSZW(:,:) &
......@@ -786,7 +788,7 @@ IF (LLES_CALL .AND. KSPLT==1) THEN
!!! wait for the computation of ZWORK and PDP
!$acc wait(2)
!
!$acc kernels
!$acc kernels present_cr(ZTMP1_DEVICE)
ZTMP1_DEVICE(:,:,:) = -ZWORK(:,:,:)
!$acc end kernels
CALL LES_MEAN_SUBGRID( ZTMP1_DEVICE, X_LES_RES_ddxa_U_SBG_UaU , .TRUE.)
......@@ -851,7 +853,8 @@ ZFLX(:,:,IKE+1) = ZFLX(:,:,IKE)
!
! extrapolates this flux under the ground with the surface flux
!$acc kernels async(3) present_cr(ZFLX)
#if !defined(MNH_BITREP) && !defined(MNH_BITREP_OMP)
!if !defined(MNH_BITREP) && !defined(MNH_BITREP_OMP)
#if !defined(MNH_BITREP)
ZFLX(:,:,IKB-1) = &
PTAU11M(:,:) * PSINSLOPE(:,:)**2 * PDIRCOSZW(:,:)**2 &
+2. * PTAU12M(:,:) * PCOSSLOPE(:,:)* PSINSLOPE(:,:) * PDIRCOSZW(:,:) &
......@@ -1076,8 +1079,9 @@ ZFLX(:,:,IKE+1)= ZFLX(:,:,IKE)
! - 2.* XCMFB * PLM(:,:,IKB:IKB) /SQRT(PTKEM(:,:,IKB:IKB)) * &
! (-2./3.) * PTP(:,:,IKB:IKB)
! extrapolates this flux under the ground with the surface flux
!$acc kernels async(3) present_cr(ZFLX)
#if !defined(MNH_BITREP) && !defined(MNH_BITREP_OMP)
!$acc kernels async(3) present_cr(ZFLX)
!if !defined(MNH_BITREP) && !defined(MNH_BITREP_OMP)
#if !defined(MNH_BITREP)
ZFLX(:,:,IKB-1) = &
PTAU11M(:,:) * ZDIRSINZW(:,:)**2 &
+ PTAU33M(:,:) * PDIRCOSZW(:,:)**2 &
......@@ -1092,7 +1096,7 @@ ZFLX(:,:,IKB-1) = &
!$mnh_end_expand_array()
#endif
!$acc end kernels
!
!
!
!!! wait for the computation of ZFLX(:,:,IKB-1) and ZFLX(:,:,IKB)
!$acc wait(2) async(3)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment