diff --git a/src/MNH/turb.f90 b/src/MNH/turb.f90
index 0d52549750f9b676a9a7a83041e62b9425a42ac9..bd109f01b0ae10ed893ee4515458de847958ce13 100644
--- a/src/MNH/turb.f90
+++ b/src/MNH/turb.f90
@@ -496,7 +496,8 @@ INTEGER  :: JLU_ZRM, JLU_TURB, JJU_ORMC01, JKU_CLOUD, JKU_TURB
 ! INOUT variables
 !
 !$acc &    create ( PBL_DEPTH, PSBL_DEPTH, PTHLT, PRT,                                     &
-!$acc &             PRUS, PRVS, PRWS, PRTHLS, PRTKES, PRRS, PRSVS )                        &
+!$acc &             PRUS, PRVS, PRWS, PRTKES, PRRS, PRSVS )                                &
+!$acc &    present( PRTHLS )                                                               &
 !
 ! OUT variables
 !
@@ -1436,10 +1437,11 @@ IF ( KRRL >= 1 ) THEN
   END IF
 END IF
 
-!$acc update self(PRRS,PTHLT,PRTHLS)
 
 ! Remove non-physical negative values (unnecessary in a perfect world) + corresponding budgets
 call Sources_neg_correct( hcloud, 'NETUR', krr, ptstep, ppabst, pthlt, prt, prthls, prrs, prsvs )
+!$acc update self( PTHLT ) !PTHLT not modified in Sources_neg_correct
+!$acc update self( PRTHLS, PRRS )
 
 !----------------------------------------------------------------------------
 !
diff --git a/src/ZSOLVER/turb.f90 b/src/ZSOLVER/turb.f90
index 25ed9117bb8ebea42e12dc5de20959492e9da42f..05252079c24d2cf2a164d182c27f1a919a3a8cbb 100644
--- a/src/ZSOLVER/turb.f90
+++ b/src/ZSOLVER/turb.f90
@@ -496,7 +496,8 @@ INTEGER  :: JLU_ZRM, JLU_TURB, JJU_ORMC01, JKU_CLOUD, JKU_TURB
 ! INOUT variables
 !
 !$acc &    create ( PBL_DEPTH, PSBL_DEPTH, PTHLT, PRT,                                     &
-!$acc &             PRUS, PRVS, PRWS, PRTHLS, PRTKES, PRRS, PRSVS )                        &
+!$acc &             PRUS, PRVS, PRWS, PRTKES, PRRS, PRSVS )                                &
+!$acc &    present( PRTHLS )                                                               &
 !
 ! OUT variables
 !
@@ -1436,10 +1437,11 @@ IF ( KRRL >= 1 ) THEN
   END IF
 END IF
 
-!$acc update self(PRRS,PTHLT,PRTHLS)
 
 ! Remove non-physical negative values (unnecessary in a perfect world) + corresponding budgets
 call Sources_neg_correct( hcloud, 'NETUR', krr, ptstep, ppabst, pthlt, prt, prthls, prrs, prsvs )
+!$acc update self( PTHLT ) !PTHLT not modified in Sources_neg_correct
+!$acc update self( PRTHLS, PRRS )
 
 !----------------------------------------------------------------------------
 !