[MITgcm-devel] alpha et omega

Martin.Losch at awi.de Martin.Losch at awi.de
Wed Nov 22 11:50:37 EST 2006


Hi there,

we are having problems on a Dec-Alpha system:
uname -a: OSF1 adva.weizmann.ac.il V5.1 2650 alpha
and some fort90 compiler that I cannot clear identify (no man pages, no -V option, really nice). With this configuration we 
run into strange problems. I'll try to list them and maybe someone can help:
- in single CPU mode (no MPI) everything seems to work fine
- with MPI the model stops with a floating point exception depending on the viscosity parameters and the compile 
options.
1. with the standard options (derived from osf1_alpha_f77), I cannot use viscA4/hSmag >0 (stops in mom_u_yviscflux.F)
2. with an additional array bound check I cannot use any viscosity at all (momViscosity=.false. is the only thing that 
works), stops in either mom_fluxform.F or mom_vecinv.F at approximately the same lines:
        CALL MOM_CALC_HDIV(bi,bj,k,2,uFld,vFld,hDiv,myThid)
        CALL MOM_CALC_RELVORT3(bi,bj,k,uFld,vFld,hFacZ,vort3,myThid)
        CALL MOM_CALC_TENSION(bi,bj,k,uFld,vFld,tension,myThid)
        CALL MOM_CALC_STRAIN(bi,bj,k,uFld,vFld,hFacZ,strain,myThid)
        DO j=1-Oly,sNy+Oly
         DO i=1-Olx,sNx+Olx
           IF ( hFacZ(i,j).EQ.0. ) THEN
             vort3(i,j)  = sideMaskFac*vort3(i,j)     <----- mom_fluxform
             strain(i,j) = sideMaskFac*strain(i,j)    <----- mom_vecinv
           ENDIF
         ENDDO
        ENDDO

The system tells me where the floating point exception occurs but that's about it. I have not been able to use any 
debugging options etc, it's all very buggy.

Any idea, what's going on? (apart from the obvious problem, that the compute is not very well maintained)

Martin

Martin Losch
Alfred Wegener Institute 
Postfach 120161, 27515 Bremerhaven, Germany; 
Tel./Fax: ++49(0471)4831-1872/1797

content of the optfile:
#!/bin/bash
## Yossi's version for alpha MPI
#
#  $Header: /u/gcmpack/MITgcm/tools/build_options/osf1+mpi,v 1.2 2003/08/27 22:12:31 edhill Exp $
#

S64='$(TOOLSDIR)/set64bitConst.sh'
#MAKEDEPEND='mkdep -f depend.out'
## MAKEDEPEND=makedepend
## DEFINES='-DWORDLENGTH=4'
## DEFINES='-DALLOW_USE_MPI -DALWAYS_USE_MPI -DTARGET_DEC -DWORDLENGTH=1'
DEFINES='-DTARGET_DEC -DWORDLENGTH=1'
FC_NAMEMANGLE='#define FC_NAMEMANGLE(X) X ## _'

MPI='true'
CPP='/usr/local/bin/cpp -traditional -P'
#ph: e.g. halem.gsfc.nasa.gov
LIBS='-L/opt/mpi/lib/alpha/ -lfmpi -lmpi -lkmp_osfp10 -pthread -L/appl/netcdf/lib'
## LIBS='-L/opt/mpi/lib/alpha/ -lfmpi -lmpi'
FC='/opt/mpi/bin/mpif77'
LINK='/opt/mpi/bin/mpif77'
FFLAGS='-convert big_endian -r8 -extend_source -automatic -call_shared -notransform_loops -align dcommons'
# FOPTIM='-O5 -fast -tune host -inline all'
FOPTIM='-O5 -fast -tune host -inline all'
#ph: -O5 probably too aggressive in conjunction with adjoint code
## INCLUDEDIRS='/opt/mpi/include/64'
INCLUDES='-I/opt/mpi/include/64 -I/appl/netcdf/include '
#ph: -lkmp_osfp10 not needed on some/many platforms
NOOPTFILES='barrier.F different_multiple.F external_fields_load.F'
NOOPTFLAGS='-O0'
RMFILES='*.p.out'
## CPP='/lib/cpp -P -DMPI -DDEC -I/opt/mpi/include/'






More information about the MITgcm-devel mailing list