[cig-commits] [commit] devel: Save some memory on addressing array. (6cea702)
cig_noreply at geodynamics.org
cig_noreply at geodynamics.org
Wed Apr 30 16:40:00 PDT 2014
Repository : ssh://geoshell/specfem3d_globe
On branch : devel
Link : https://github.com/geodynamics/specfem3d_globe/compare/811ae11b80604736d2845c4e5a062755069fc9a6...fedf291c8257de6ffc3151362afcb814578beb7e
>---------------------------------------------------------------
commit 6cea702b6af29a01a5d75327903cbd3a2e3b6241
Author: Elliott Sales de Andrade <esalesde at physics.utoronto.ca>
Date: Wed Apr 30 19:08:58 2014 -0400
Save some memory on addressing array.
>---------------------------------------------------------------
6cea702b6af29a01a5d75327903cbd3a2e3b6241
src/specfem3D/read_mesh_databases.F90 | 9 +++++++--
src/specfem3D/specfem3D_par.F90 | 2 +-
2 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/src/specfem3D/read_mesh_databases.F90 b/src/specfem3D/read_mesh_databases.F90
index dfef7e2..0e66da5 100644
--- a/src/specfem3D/read_mesh_databases.F90
+++ b/src/specfem3D/read_mesh_databases.F90
@@ -95,14 +95,18 @@
endif
call read_mesh_databases_coupling()
- ! reads "addressing.txt" 2-D addressing (needed for Stacey boundaries)
+ ! reads "addressing.txt" 2-D addressing (needed for Stacey boundaries and
+ ! regular grid kernels)
if( SYNC_READING ) call synchronize_all()
if( myrank == 0 ) then
write(IMAIN,*) ' reading in addressing...'
call flush_IMAIN()
endif
+ allocate(addressing(NCHUNKS_VAL,0:NPROC_XI_VAL-1,0:NPROC_ETA_VAL-1))
call read_mesh_databases_addressing()
-
+ if (.not.SAVE_REGULAR_KL) then
+ deallocate(addressing)
+ endif
! sets up MPI interfaces, inner/outer elements and mesh coloring
if( SYNC_READING ) call synchronize_all()
@@ -131,6 +135,7 @@
call flush_IMAIN()
endif
call read_mesh_databases_regular_kl()
+ deallocate(addressing)
endif
#ifdef USE_SERIAL_CASCADE_FOR_IOs
diff --git a/src/specfem3D/specfem3D_par.F90 b/src/specfem3D/specfem3D_par.F90
index 89c61bf..0f3a8be 100644
--- a/src/specfem3D/specfem3D_par.F90
+++ b/src/specfem3D/specfem3D_par.F90
@@ -216,7 +216,7 @@ module specfem_par
! proc numbers for MPI
integer :: myrank
integer :: ichunk ! needed for Stacey boundaries
- integer, dimension(NCHUNKS_VAL,0:NPROC_XI_VAL-1,0:NPROC_ETA_VAL-1) :: addressing
+ integer, dimension(:,:,:), allocatable :: addressing
! time loop timing
double precision :: time_start
More information about the CIG-COMMITS
mailing list