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