diff --git a/src/MNH/get_halo.f90 b/src/MNH/get_halo.f90
index dda503fba0523f0e719094cf68388754bbe1be3d..bdfbf9b7d0223468159b2607b4763e5fad9499e1 100644
--- a/src/MNH/get_halo.f90
+++ b/src/MNH/get_halo.f90
@@ -118,11 +118,8 @@ MODULE MODD_HALO_D
 IMPLICIT NONE 
 REAL, SAVE , ALLOCATABLE, DIMENSION(:,:,:)  :: ZNORTH_IN, ZSOUTH_IN, ZWEST_IN, ZEAST_IN
 REAL, SAVE , ALLOCATABLE, DIMENSION(:,:,:)  :: ZNORTH_OUT, ZSOUTH_OUT, ZWEST_OUT, ZEAST_OUT
-!PW ne passe pas avec PGI 15.10 (call to cuStreamSynchronize returned error 700: Illegal address during kernel execution):
 !!$acc declare create (ZNORTH_IN, ZSOUTH_IN, ZWEST_IN, ZEAST_IN)
 !!$acc declare create (ZNORTH_OUT, ZSOUTH_OUT, ZWEST_OUT, ZEAST_OUT)
-!!$acc declare mirror (ZNORTH_IN, ZSOUTH_IN, ZWEST_IN, ZEAST_IN)
-!!$acc declare mirror (ZNORTH_OUT, ZSOUTH_OUT, ZWEST_OUT, ZEAST_OUT)
 
 LOGICAL, SAVE                               :: GFIRST_GET_HALO_D = .TRUE.
 
diff --git a/src/MNH/modd_fieldn.f90 b/src/MNH/modd_fieldn.f90
index 5fcd79de0d16cce0196491ae7bd293cac30116db..9dd73ea052a5224c1cad504a54f699874beb9a53 100644
--- a/src/MNH/modd_fieldn.f90
+++ b/src/MNH/modd_fieldn.f90
@@ -120,10 +120,8 @@ REAL, DIMENSION(:,:,:), POINTER :: XTHT=>NULL()
 REAL, DIMENSION(:,:,:), POINTER :: XRTHS=>NULL()
 #else
 REAL, DIMENSION(:,:,:), ALLOCATABLE, TARGET  :: XTHT
-!!$acc declare mirror (XTHT)
 !!$acc declare create(XTHT)
 REAL, DIMENSION(:,:,:), ALLOCATABLE, TARGET :: XRTHS
-!!$acc declare mirror (XRTHS)
 !!$acc declare create (XRTHS)
 #endif
 REAL, DIMENSION(:,:,:), POINTER :: XRTHS_CLD=>NULL()
@@ -139,10 +137,8 @@ REAL, DIMENSION(:,:,:,:), POINTER :: XRT=>NULL()
 REAL, DIMENSION(:,:,:,:), POINTER :: XRRS=>NULL()
 #else
 REAL, DIMENSION(:,:,:,:), ALLOCATABLE, TARGET :: XRT
-!!$acc declare mirror (XRT)
 !!$acc declare create (XRT)
 REAL, DIMENSION(:,:,:,:), ALLOCATABLE, TARGET :: XRRS
-!!$acc declare mirror (XRRS)
 !!$acc declare create (XRRS)
 #endif
 REAL, DIMENSION(:,:,:,:), POINTER :: XRRS_CLD=>NULL()
diff --git a/src/MNH/mode_mnh_zwork.f90 b/src/MNH/mode_mnh_zwork.f90
index cd9afd7f8980acf69560cbab54bcd39666b4d3e2..aa36569ddf5f3f1248b6125ce34bc9b4d5501777 100644
--- a/src/MNH/mode_mnh_zwork.f90
+++ b/src/MNH/mode_mnh_zwork.f90
@@ -16,13 +16,10 @@ MODULE MODE_MNH_ZWORK
   !
   REAL, SAVE, ALLOCATABLE , DIMENSION(:,:)   :: ZPSRC_HALO2_WEST
   REAL, SAVE, ALLOCATABLE , DIMENSION(:,:)   :: ZPSRC_HALO2_SOUTH
-  !$acc declare mirror(ZPSRC_HALO2_WEST,ZPSRC_HALO2_SOUTH)
-!PW ne passe pas (PGI15.10/16.1) !$acc declare create(ZPSRC_HALO2_WEST,ZPSRC_HALO2_SOUTH)
+!$acc declare create(ZPSRC_HALO2_WEST,ZPSRC_HALO2_SOUTH)
 
   REAL, SAVE, ALLOCATABLE , DIMENSION(:,:,:) :: ZUNIT3D
-  !$acc declare mirror(ZUNIT3D)
-!PW ne passe pas avec PGI 15.10/16.1 (call to cuStreamSynchronize returned error 700: Illegal address during kernel execution):
-! !$acc declare create(ZUNIT3D)
+!$acc declare device_resident(ZUNIT3D)
 
   INTEGER                                   :: JPMAX_T3D = 40
   INTEGER , ALLOCATABLE, DIMENSION (:)      :: NT3D_POOL
@@ -31,9 +28,7 @@ MODULE MODE_MNH_ZWORK
   !REAL    , POINTER    , DIMENSION(:,:,:,:)          :: ZT3D
   REAL,SAVE    , ALLOCATABLE, DIMENSION(:,:,:,:)          :: ZT3D
   ! acc declare create(ZT3D_A1,ZT3D_A2,ZT3D_A3,ZT3D_A4)
-  !$acc declare mirror(ZT3D)
-!PW ne passe pas  !$acc declare create(ZT3D)
-
+!$acc declare device_resident(ZT3D)
   TYPE TMODEL
       REAL    , POINTER, DIMENSION(:,:,:,:) :: X
   END TYPE TMODEL