John Taylor at Argonne National Laboratory has kindly provided some suggestions for compiling MM5 MPP on Linux Itanium systems. Note that some of the suggested settings are ANL specific. Thank you, John.
Tera-regards,
Rotang
------------------------------------------------------------- From: John A Taylor [jtaylor@mcs.anl.gov] Listed below are the compilation flags that I use here at Argonne on our TeraGrid IA-64 cluster using mpich over myrinet and the Intel compilers. The Intel efc compilation leads to results consistent with my compilation of MM5 using the Intel compilers on ia-32, although their are important differences in the compilation flags. MM5 runs significantly faster on our IA-64 hardware compared to IA-32, however additional compiler options may enhance performance beyond what we are seeing. The LINUX_MPIHOME variable must be set to point to your mpich build using the Intel compilers - this should be the only thing that you need to change. Don't forget that you also need to set the environment variables in order to read and write big-endian data. [Rotang's note: setenv F_UFMTENDIAN big] RUNTIME_SYSTEM = "linux" MPP_TARGET=$(RUNTIME_SYSTEM) ## myrinet with mpich on Teragrid LINUX_MPIHOME = /software/linux-sles8-ia64/mpich-gm-1.2.5..10_gm-2.0.5_intel-c-7.1.025-f7.1.028_ssh-3.5p1 MFC = $(LINUX_MPIHOME)/bin/mpif77 MCC = $(LINUX_MPIHOME)/bin/mpicc MLD = $(LINUX_MPIHOME)/bin/mpif77 FCFLAGS = -O3 -ftz -I$(LINUX_MPIHOME)/include LDOPTIONS = -O3 LOCAL_LIBRARIES = -L$(LINUX_MPIHOME)/lib -lfmpich -lmpich MAKE = make -i -r AWK = awk SED = sed CAT = cat CUT = cut EXPAND = expand M4 = m4 CPP = /lib/cpp -C -P -traditional CPPFLAGS = -DMPI -Dlinux -DDEC_ALPHA -traditional CFLAGS = -DMPI -I$(LINUX_MPIHOME)/include ARCH_OBJS = milliclock.o IWORDSIZE = 4 RWORDSIZE = 4 LWORDSIZE = 4 -------------------------------------------------------------