[cig-commits] r12449 - seismo/2D/SPECFEM2D/trunk
dkomati1 at geodynamics.org
dkomati1 at geodynamics.org
Mon Jul 21 05:28:02 PDT 2008
Author: dkomati1
Date: 2008-07-21 05:28:02 -0700 (Mon, 21 Jul 2008)
New Revision: 12449
Modified:
seismo/2D/SPECFEM2D/trunk/Makefile
seismo/2D/SPECFEM2D/trunk/specfem2D.F90
Log:
committed version 3 of the improved code developed in Barcelona based on the ParaVer analysis performed with Jesus Labarta
Modified: seismo/2D/SPECFEM2D/trunk/Makefile
===================================================================
--- seismo/2D/SPECFEM2D/trunk/Makefile 2008-07-21 12:01:00 UTC (rev 12448)
+++ seismo/2D/SPECFEM2D/trunk/Makefile 2008-07-21 12:28:02 UTC (rev 12449)
@@ -42,11 +42,16 @@
SHELL=/bin/sh
+# uncomment this on MareNostrum in Barcelona
+#MPITRACE_HOME = /gpfs/apps/CEPBATOOLS/mpitrace-devel-start/64
+#PAPI_HOME = /gpfs/apps/PAPI/3.2.1-970mp/64
+#PERFCTR_HOME = /gpfs/apps/PAPI/papi-3.2.1-970mp/64
+
O = obj
# Portland
+#F90 = pgf90
#F90 = /opt/openmpi-1.2.2/pgi64/bin/mpif90 -DUSE_MPI -DUSE_METIS -DUSE_SCOTCH
-#F90 = pgf90
#CC = pgcc
#FLAGS_NOCHECK=-fast -Mnobounds -Minline -Mneginfo -Mdclchk -Knoieee -Minform=warn -fastsse -tp amd64e -Msmart
#FLAGS_CHECK=-fast -Mbounds -Mneginfo -Mdclchk -Minform=warn
@@ -61,24 +66,31 @@
#FLAGS_CHECK = $(FLAGS_NOCHECK)
# GNU gfortran
+F90 = gfortran
+#F90 = mpif90 -DUSE_MPI -DUSE_METIS -DUSE_SCOTCH
#F90 = /opt/openmpi-1.2.1/gfortran64/bin/mpif90 -DUSE_MPI -DUSE_METIS -DUSE_SCOTCH
-F90 = gfortran
CC = gcc
#FLAGS_NOCHECK = -O3 -march=opteron -m64 -mfpmath=sse,387
-FLAGS_NOCHECK = -std=gnu -fimplicit-none -frange-check -O2 -Wunused-labels -Waliasing -Wampersand -Wsurprising -Wline-truncation -Wunderflow
+FLAGS_NOCHECK = -std=gnu -fimplicit-none -frange-check -O2 -Wunused-labels -Waliasing -Wampersand -Wsurprising -Wline-truncation -Wunderflow -fbounds-check
FLAGS_CHECK = $(FLAGS_NOCHECK) -fbounds-check
# IBM
-#F90 = xlf_r
-#CC = xlc -q64
-#FLAGS_NOCHECK = -qextname=attenuation_compute_param -O3 -qsave -qstrict -q64 -qtune=ppc970 -qarch=ppc64v -qcache=auto -qfree=f90 -Q -qsuffix=f=f90 -qhalt=w -qflttrap=en:ov:zero:inv -qfullpath -qsigtrap
-#FLAGS_CHECK = $(FLAGS_NOCHECK) -qddim
+#####F90 = xlf_r
+#F90 = mpif90 -WF,-DUSE_MPI,-DUSE_METIS
+#CC = xlc -g -q64
+# uncomment this on MareNostrum in Barcelona
+#FLAGS_NOCHECK_ADD = -L$(MPITRACE_HOME)/lib -lmpitracef -lxml2 -L${PAPI_HOME}/lib -lpapi -lperfctr
+#FLAGS_NOCHECK = $(FLAGS_NOCHECK_ADD) -qextname=attenuation_compute_param -O3 -qstrict -q64 -qtune=ppc970 -qarch=ppc970 -qcache=auto -qfree=f90 -Q -qsuffix=f=f90 -qhalt=w -qflttrap=overflow:zerodivide:invalid:enable -qfullpath
+#####FLAGS_NOCHECK = $(FLAGS_NOCHECK_ADD) -qextname=attenuation_compute_param -O3 -qstrict -q64 -qtune=ppc970 -qarch=ppc970 -qcache=auto -qfree=f90 -qsuffix=f=f90 -qhalt=w -qflttrap=overflow:zerodivide:invalid:enable -qinitauto=7FBFFFFF -C # -qlanglvl=2003pure
+#####FLAGS_NOCHECK = $(FLAGS_NOCHECK_ADD) -qextname=attenuation_compute_param -O0 -q64 -qtune=ppc970 -qarch=ppc970 -qcache=auto -qfree=f90 -qsuffix=f=f90 -qhalt=w -qflttrap=overflow:zerodivide:invalid:enable -qinitauto=7FBFFFFF -C -g -qfullpath -qlinedebug
+#FLAGS_CHECK = $(FLAGS_NOCHECK)
+#LIB = /opt/metis-4.0/gcc64/lib/libmetis.a /opt/scotch-4.0/gcc64/lib/libscotch.a /opt/scotch-4.0/gcc64/lib/libscotcherr.a
+# uncomment this on MareNostrum in Barcelona
+#LIB = /home/hpce08/hpce08548/utils/metis-4.0/libmetis.a
+
LINK = $(F90)
-#LIB = /opt/metis-4.0/gcc64/lib/libmetis.a /opt/scotch-4.0/gcc64/lib/libscotch.a /opt/scotch-4.0/gcc64/lib/libscotcherr.a
-LIB =
-
OBJS_MESHFEM2D = $O/part_unstruct.o $O/meshfem2D.o $O/read_value_parameters.o $O/spline_routines.o
OBJS_SPECFEM2D = $O/checkgrid.o $O/datim.o $O/enforce_acoustic_free_surface.o\
@@ -90,7 +102,7 @@
$O/recompute_jacobian.o $O/compute_arrays_source.o $O/locate_source_moment_tensor.o $O/netlib_specfun_erf.o\
$O/construct_acoustic_surface.o $O/assemble_MPI.o $O/compute_energy.o $O/compute_curl_one_element.o\
$O/attenuation_compute_param.o $O/compute_Bielak_conditions.o $O/paco_beyond_critical.o\
- $O/paco_convolve_fft.o $O/is_in_convex_quadrilateral.o
+ $O/paco_convolve_fft.o $O/is_in_convex_quadrilateral.o $O/get_perm_cuthill_mckee.o
default: clean meshfem2D specfem2D convolve_source_timefunction
@@ -237,6 +249,9 @@
$O/paco_convolve_fft.o: paco_convolve_fft.f90 constants.h
${F90} $(FLAGS_CHECK) -c -o $O/paco_convolve_fft.o paco_convolve_fft.f90
-$O/is_in_convex_quadrilateral.o: is_in_convex_quadrilateral.f90
+$O/is_in_convex_quadrilateral.o: is_in_convex_quadrilateral.f90 constants.h
${F90} $(FLAGS_CHECK) -c -o $O/is_in_convex_quadrilateral.o is_in_convex_quadrilateral.f90
+$O/get_perm_cuthill_mckee.o: get_perm_cuthill_mckee.f90 constants.h
+ ${F90} $(FLAGS_CHECK) -c -o $O/get_perm_cuthill_mckee.o get_perm_cuthill_mckee.f90
+
Modified: seismo/2D/SPECFEM2D/trunk/specfem2D.F90
===================================================================
--- seismo/2D/SPECFEM2D/trunk/specfem2D.F90 2008-07-21 12:01:00 UTC (rev 12448)
+++ seismo/2D/SPECFEM2D/trunk/specfem2D.F90 2008-07-21 12:28:02 UTC (rev 12449)
@@ -145,8 +145,8 @@
implicit none
! implement Cuthill-McKee or replace with identity permutation
- logical, parameter :: ACTUALLY_IMPLEMENT_PERM_OUT = .false.
- logical, parameter :: ACTUALLY_IMPLEMENT_PERM_INN = .false.
+ logical, parameter :: ACTUALLY_IMPLEMENT_PERM_OUT = .true.
+ logical, parameter :: ACTUALLY_IMPLEMENT_PERM_INN = .true.
include "constants.h"
#ifdef USE_MPI
More information about the cig-commits
mailing list