From b85839d8f595cdd7fbf4438bb3fca7516e749de9 Mon Sep 17 00:00:00 2001
From: ESCOBAR Juan <escj@nuwa>
Date: Mon, 14 Sep 2020 12:03:28 +0200
Subject: [PATCH] Juan 14/09/2020 : tridiag_thermo.f90 , OpenACC optimisation
 -> DO CONCURRENT +  loop gang vector collapse

---
 src/MNH/tridiag_thermo.f90 | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/src/MNH/tridiag_thermo.f90 b/src/MNH/tridiag_thermo.f90
index 67d34204a..8d3954f66 100644
--- a/src/MNH/tridiag_thermo.f90
+++ b/src/MNH/tridiag_thermo.f90
@@ -371,19 +371,19 @@ END DO !CONCURRENT
 !
 !$acc loop seq
 DO JK = IKB+KKL,IKE-KKL,KKL
-   !DO CONCURRENT ( JI=1:JIU,JJ=1:JJU)
-!$acc loop collapse(2) independent
-   DO JJ=1,JJU
-      DO JI=1,JIU     
+!$acc loop gang, vector collapse(2)
+   DO CONCURRENT ( JI=1:JIU,JJ=1:JJU)
+   !DO JJ=1,JJU
+   !   DO JI=1,JIU     
       ZGAM(JI,JJ,JK) = ZC(JI,JJ,JK-KKL) / ZBET(JI,JJ)  
       ! gam(k) = c(k-1) / bet
       ZBET(JI,JJ)    = ZB(JI,JJ,JK) - ZA(JI,JJ,JK) * ZGAM(JI,JJ,JK)
       ! bet = b(k) - a(k)* gam(k)  
       PVARP(JI,JJ,JK)= ( ZY(JI,JJ,JK) - ZA(JI,JJ,JK) * PVARP(JI,JJ,JK-KKL) ) / ZBET(JI,JJ)
       ! res(k) = (y(k) -a(k)*res(k-1))/ bet
-      END DO
-   END DO
-   !END DO !CONCURRENT 
+   !   END DO
+   !END DO
+   END DO !CONCURRENT 
 END DO
 ! special treatment for the last level
 DO CONCURRENT ( JI=1:JIU,JJ=1:JJU)
-- 
GitLab