[Mitgcm-support] Re: Unsetting buoyancyRelation

mitgcm-support at dev.mitgcm.org mitgcm-support at dev.mitgcm.org
Wed Jul 9 15:55:26 EDT 2003


Hi Tor,

 This is fixed in release1
 To fix c40pre5 you need to modify eesupp/src/ini_communications_patterns.F
to
put the exchNeedsMemsync flag setting conditional on whether ALWAYS_USE_MI
is defined e.g.
===================================================================
RCS file:
/u/u0/gcmpack/models/MITgcmUV/eesupp/src/ini_communication_patterns.F,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
-C--   Turn off memsync by default
+#ifndef ALWAYS_USE_MPI
+C--   Turn off memsync by default (e.g. needed for threads on SUNs)
       exchNeedsMemsync = .TRUE.
       exchUsesBarrier  = .TRUE.
+#else
+C--   ... except that MPI needs this until some counter problem is fixed.
+      exchNeedsMemsync = .FALSE.
+      exchUsesBarrier  = .FALSE.
+#endif


Chris
----- Original Message -----
From: "Tor Eldevik" <tor.eldevik at nersc.no>
To: <support at mitgcm.org>
Sent: Sunday, November 25, 2001 5:11 PM
Subject: Unsetting buoyancyRelation


> Hi,
>
> the Norwegian village idiot has finally realized that
> running the code on several processors is a good idea.
> After finally getting the code properly MPI-compiled,
> I am stuck with a run-time error. After about 10
> timesteps, the character variable buoyancyRelation
> is changed from 'OCEANIC' to rubbish
>
>  ^M^[^M^\^M^]^M^^^M^_^M
>
^M!^M"^M#^M$^M%^M&^M'^M(^M)^M*^M+^M,^M-^M.^M/^M0^M1^M2^M3^M4^M5^M6^M7^M8^M9^
M:^M;^M<^
>
M=^M>^M?^M@^MA^MB^MC^MD^ME^MF^MG^MH^MI^MJ^MK^ML^MM^MN^MO^MP^MQ^MR^MS^MT^MU^M
V^MW^MX^MY^MZ^M[^M\^M]^M^^M_^M`^M
>
a^Mb^Mc^Md^Me^Mf^Mg^Mh^Mi^Mj^Mk^Ml^Mm^Mn^Mo^Mp^Mq^Mr^Ms^Mt^Mu^Mv^Mw^Mx^My^Mz
^M{^M|^M}^M~^M^?^M\200^M\201^M\20
>
2^M\203^M\204^M\205^M\206^M\207^M\210^M\211^M\212^M\213^M\214^M\215^M\216^M\
217^M\220^M\221^M\222^M\223^M\224
>
> The end of CALC_PHI_HYD.F is reached accordingly and the code stops.
>
> STOP CALC_PHI_HYD: We should never reach this point! statement executed
>
> Any ideas?
>
> The version used is checkpt40pre5 and it is run on an SGI Origin 3000.
> The domain is 16 x 64 x 64. The error does not occur if
> the coMPIlied coed is run on a single processor.
> Below are the first few lines of the Makefile.
>
> tor
> --
> =======================================================
>   Tor Eldevik, Research Scientist
>
>   Nansen Environmental and Remote Sensing Center
>   Edvard Griegs vei 3a, N-5059 Bergen, Norway
>
>   +47 55 29 29 01 ext. 225 (direct)
>   +47 55 29 72 88          (manual switch board)
>   +47 55 20 00 50          (fax)
>
>   tor.eldevik at nersc.no     http://www.nersc.no/~torel/
> =======================================================
>  Multithreaded + multi-processing makefile for IRIX64 gridur 6.5
> 07091544 IP35
> # This makefile was generated automatically on
> #    Fri Nov 23 11:18:35 MET 2001
> # by the command:
> #    ../../../tools/genmake -mpi
> -disable=aim,autodiff,ctrl,cost,gmredi,kpp,mdsio,mom_vecinv,obcs,shap_filt
,t
> imeave,zonal_filt -mods=../code/
> # executed by:
> #
>
elde at gridur:/home/u1/elde/mitgcmUV/checkpt40pre5/verification/MPItesting/inp
ut
> #
> # BUILDDIR     : Directory where object files are written
> # SOURCEDIRS   : Directories containing the source (.F) files
> # INCLUDEDIRS  : Directories containing the header-source (.h) files
> # EXEDIR       : Directory where executable that is generated is written
> # EXECUTABLE   : Full path of executable binary
> #
> # CPP          : C-preprocessor command
> # INCLUDES     : Directories searched for header files
> # DEFINES      : Macro definitions for CPP
> # KPP          : Special preprocessor command (specific to platform)
> # KFLAGS       : Flags for KPP
> # FC           : Fortran compiler command
> # FFLAGS       : Configuration/debugging options for FC
> # FOPTIM       : Optimization options for FC
> # LINK         : Command for link editor program
> # LIBS         : Library flags /or/ additional optimization/debugging
> flags
>
> ROOTDIR     = ../../..
> BUILDDIR    = .
> SOURCEDIRS  = ../code/ ../../../pkg/debug ../../../pkg/generic_advdiff
> ../../../pkg/mom_fluxform ../../../pkg
> /monitor ../../../eesupp/src ../../../model/src
> INCLUDEDIRS = . ../code/ ../../../pkg/debug ../../../pkg/generic_advdiff
> ../../../pkg/mom_fluxform ../../../p
> kg/monitor ../../../eesupp/inc ../../../model/inc
> EXEDIR      = .
> EXECUTABLE  = $(EXEDIR)/mitgcmuv
> TOOLSDIR    = ../../../tools
>
> # Unix ln (link)
> LN = ln -s
> # C preprocessor
> CPP = cat $< | $(TOOLSDIR)/set64bitConst.sh | /lib/cpp -P
> # Special preprocessor (KAP on DECs, FPP on Crays)
> KPP =
> # Fortran compiler
> FC = f77
> # Link editor
> LINK = f77
>
> # Defines for CPP
> DEFINES = -DALLOW_USE_MPI -DALWAYS_USE_MPI -DTARGET_SGI -DWORDLENGTH=4
> # Includes for CPP
> INCLUDES = -I/usr/local/mpi/include -I. -I../code/ -I../../../pkg/debug
> -I../../../pkg/generic_advdiff -I../.
> ./../pkg/mom_fluxform -I../../../pkg/monitor -I../../../eesupp/inc
> -I../../../model/inc
> # Flags for KPP
> KFLAGS1 =
> KFLAGS2 =
> # Optim./debug for FC
> FFLAGS = -extend_source -mp -mpio -bytereclen -64 -r12000 -mips4 -r8
> -static
> CFLAGS = -64
> FOPTIM = -O3
> # Files that should not be optimized
> NOOPTFILES =
> NOOPTFLAGS =
> # Flags and libraries needed for linking
> XLIBS = -lmpi
> LIBS =  $(XLIBS)
>




More information about the MITgcm-support mailing list