From d7224401a9c27ae033428cc1864a4ddd124caae9 Mon Sep 17 00:00:00 2001 From: Philippe WAUTELET <philippe.wautelet@aero.obs-mip.fr> Date: Thu, 5 Apr 2018 11:25:21 +0200 Subject: [PATCH] Philippe 05/04/2018: deallocate_model1: do not deallocate XXHAT, XYHAT and XZHAT because they are often needed later (and they do not consume a lot of memory) --- src/MNH/deallocate_model1.f90 | 8 +++++--- src/MNH/read_prc_fmfile.f90 | 25 ------------------------- 2 files changed, 5 insertions(+), 28 deletions(-) diff --git a/src/MNH/deallocate_model1.f90 b/src/MNH/deallocate_model1.f90 index ebae4a9b5..82791e2bd 100644 --- a/src/MNH/deallocate_model1.f90 +++ b/src/MNH/deallocate_model1.f90 @@ -219,14 +219,16 @@ IF ( ASSOCIATED(XLON) .AND. KCALL == 3 ) THEN END IF ! IF ( KCALL == 3 ) THEN - DEALLOCATE(XXHAT) + !Philippe W.: do not deallocate XXHAT, XYHAT and XZHAT because they are needed later on + !As they are 1D, their memory footprint is negligible + ! DEALLOCATE(XXHAT) DEALLOCATE(XDXHAT) - DEALLOCATE(XYHAT) + ! DEALLOCATE(XYHAT) DEALLOCATE(XDYHAT) DEALLOCATE(XZS) DEALLOCATE(XZSMT) DEALLOCATE(XZZ) - DEALLOCATE(XZHAT) + ! DEALLOCATE(XZHAT) END IF ! IF ( KCALL == 2 ) THEN diff --git a/src/MNH/read_prc_fmfile.f90 b/src/MNH/read_prc_fmfile.f90 index 363d61fcb..50274d6a0 100644 --- a/src/MNH/read_prc_fmfile.f90 +++ b/src/MNH/read_prc_fmfile.f90 @@ -163,9 +163,6 @@ REAL, DIMENSION(:,:), ALLOCATABLE :: ZINPRG_LS REAL, DIMENSION(:,:), ALLOCATABLE :: ZACPRG_LS REAL, DIMENSION(:,:), ALLOCATABLE :: ZINPRH_LS REAL, DIMENSION(:,:), ALLOCATABLE :: ZACPRH_LS -REAL, DIMENSION(:), ALLOCATABLE :: ZXHAT -REAL, DIMENSION(:), ALLOCATABLE :: ZYHAT -REAL, DIMENSION(:), ALLOCATABLE :: ZZHAT INTEGER :: IMI ! !20131105 add vars related to ADD3DFIELD and UPDATE_HALO @@ -290,18 +287,6 @@ END IF ! !------------------------------------------------------------------------------- ! -!* 4. SAVE FIELDS STORED IN MODEL1 MODULE already INITIALIZED in PREP_REAL_CASE -! ------------------------------------------------------------------------- -! -ALLOCATE(ZXHAT(SIZE(XXHAT))) -ALLOCATE(ZYHAT(SIZE(XYHAT))) -ALLOCATE(ZZHAT(SIZE(XZHAT))) -ZXHAT(:) = XXHAT(:) -ZYHAT(:) = XYHAT(:) -ZZHAT(:) = XZHAT(:) -! -!------------------------------------------------------------------------------- -! !* 5. DEALLOCATIONS OF FIELDS OF MODEL1 ! --------------------------------- ! @@ -317,16 +302,6 @@ DEALLOCATE(XTHVREFZ) !* 6. RECOVERS FIELDS STORED IN MODEL1 MODULE already INITIALIZED in PREP_REAL_CASE ! ----------------------------------------------------------------------------- ! -ALLOCATE(XXHAT(SIZE(ZXHAT))) -ALLOCATE(XYHAT(SIZE(ZYHAT))) -ALLOCATE(XZHAT(SIZE(ZZHAT))) -XXHAT(:) = ZXHAT(:) -XYHAT(:) = ZYHAT(:) -XZHAT(:) = ZZHAT(:) -DEALLOCATE(ZXHAT) -DEALLOCATE(ZYHAT) -DEALLOCATE(ZZHAT) -! IF (ALLOCATED(ZINPRC_LS)) THEN ALLOCATE(XINPRC(IIU,IJU)) ALLOCATE(XACPRC(IIU,IJU)) -- GitLab