MM5 Model on PC
Complie Options for PC Running Linux and pgf77/pgf90 Compiler
If you are trying to compile and run MM5 model on a PC, the following
describes the changes you need to make to configure.user
file and mm5.deck. There is no change required in the Fortran
source code. To see the PC timing result, click here.
Note that to run the MM5 model on a PC, it requires Linux
and Portland Group Inc. Fortran
compiler version 1.6 and above. The input data format is the standard
workstation 32-bit IEEE data. You may download Linux from their
web page.
The compiler options are in the configure.user.linux:
#-----------------------------------------------------------------------------
# 3i1. PC (LINUX/Portland Group Inc.)
# pgf77 version 1.6 and above
#-----------------------------------------------------------------------------
FC = pgf77
FCFLAGS = -I$(LIBINCLUDE) -O2 -Mcray=pointer -tp p6 -pc 32 -Mnoframe
-byteswapio
#FCFLAGS = -I$(LIBINCLUDE) -O2 -Mcray=pointer -tp p6 -pc 32 -Mnoframe
-byteswapio -mp
#-Mnosgimp
CPP = /lib/cpp
CFLAGS = -O
CPPFLAGS = -I$(LIBINCLUDE)
LDOPTIONS = -O2 -Mcray=pointer -tp p6 -pc 32 -Mnoframe -byteswapio
#LDOPTIONS = -O2 -Mcray=pointer -tp p6 -pc 32 -Mnoframe -byteswapio
-mp
LOCAL_LIBRARIES =
MAKE = make -i
#-----------------------------------------------------------------------------
It is also recommended to remove the following section in configure.user
file, since pgf77 supports cpp:
.F.i:
$(RM) $@
$(CPP) $(CPPFLAGS) $*.F > $@
mv $*.i $(DEVTOP)/pick/$*.f
cp $*.F $(DEVTOP)/pick
(The above is provided by George Lai of NASA/GODDARD)
Update (4/19/01)
If you have RedHat 6.2 and default kernal (version 2.2.14-5.0),
you may encounter strange problem with MM5 runs (such as CFL error
appearing randomly in a run). In this case you should definitely
upgrade the kernal as there is a known problem with this default
one which, according to an expert, 'contains a bug that can result
in data corruption under heavy load'. The recommended 2.2.14 kernel
is 2.2.14-6.0.2 or later ones.
Update (9/6/00)
Add -Kieee compile option if you choose to use Gayno-Seaman PBL
scheme. Without this option, MM5 fails immediately with 'NaN' and
then CFL problem.
Update (7/12/99)
With newer version of PGF compiler, you may compile for multi-processor
PC runs with -Mnosgimp option added to FCFLAGS and LDOPTIONS. This
allows user to use OpenMP parallel directives and deactivate SGI
parallel directives.
If you are getting strange error when running the model (such
as 'Segmentation fault'), it may be due to lack of stack size. Use
the following to increase stack size:
setenv MPSTKZ 8M
Or type
limit stacksize unlimited
Also look for help in PGI User's Guide. (Thanks to Michael Morgan
of University of Wiscousin.)
Changes to mm5.deck
All Fortran units need to be change from fort.xx to FTNxxx. For
example,
fort.8 --> FTN008
fort.11 --> FTN011
You may not need to do so with newer compiler from PGF.
Update (4/21/98)
-
If you have difficulty compiling, you may try to remove another
rule near the bottom of the configure.user file:
.F.f:
$(RM) $@
$(CPP) $(CPPFLAGS) $*.F > $@
-
If you have pgf77 1.7 and above, you won't need to change
the fortran units in a mm5.deck: fort.10 etc. work fine for
those compilers.
|