[cam-users] RE: CAM2 intel 8.0...

Kalyana_Chadalavada at Dell.com Kalyana_Chadalavada at Dell.com
Tue Feb 24 09:01:52 MST 2004


David,

Please find the changes in the makefile below:

Under the Linux architecture, add this:

ifeq ($(USER_CC),$(null))
  ifeq ($(FC),ifort)
    CC := icc
  else
    CC := cc
  endif
else
  CC := $(USER_CC)
endif

Add the following after: # Figure out the ESMF architecture

ifeq ($(FC),ifort)
  ifeq ($(CC),icc)
    ESMF_ARCH = linux_intel
  else
    ESMF_ARCH = linux_gnuintel90
  endif
endif

ifeq ($(CC),icc)
  CFLAGS += #-fast
endif


For enabling SMP:

# ifort
#

ifeq ($(FC),ifort)

#  ifeq ($(SMP),$(null))
#    SMP := TRUE
#  endif
  mod_path  := -I$(ESMF_MOD)/$(ESMF_ARCH) -I$(MOD_NETCDF)
  FFLAGS    := $(cpp_path) $(mod_path) $(CPPDEF) -r8 -i4 -recursive -align
commons -DLINUX
#  FREEFLAGS := -Mfree

  ifeq ($(DEBUG),TRUE)
    FFLAGS      += -g
    SPEC_FFLAGS := $(FFLAGS)
  else
    SPEC_FFLAGS := $(FFLAGS)
# Changed to -O1 due to bfb failure of test-model.pl test #fv06
#    FFLAGS += -fast
    FFLAGS +=
  endif
  BENGY_FLAGS := $(SPEC_FFLAGS)

  ifeq ($(SMP),TRUE)
    FFLAGS += -openmp
    BENGY_FLAGS += -openmp
    LDFLAGS += -openmp
  endif

endif

ifeq ($(SMP),TRUE)
  # THREADED_OMP and THREADED_PTHREADS are used by the timing library
  ifeq ($(CC),icc)
    CFLAGS += -openmp
  else
    CFLAGS += -DTHREADED_PTHREADS
  endif

Now go to the ESMF directory, copy linux_pgi as linux_intel and
linux_gnupgf90 as linux_gnuintel90

In linux_intel:

open base_variables as modify C_CC, C_FC, C_LINKER, C_FCV, CXX_CC, CXX_FC,
CXX_CLINKER, CXX_FLINKER to reflect Intel compilers - icc, ifort, icpc. 

Open ESMF_conf.h and change ESMF_ARCH_NAME to "linux_intel"

Open base.site and make changes to MPI_HOME, MPI_LIB, MPI_INCLUDE, MPIRUN to
reflect your MPI installation. 

Make similar changes in linux_gnuintel90

Do not use IPO for compilation and linking. If you use IPO, the run will
terminate with a segmentation fault when doing a 30-day or more run. Tried a
bit to diagnose why, was not successful. The same problem does not occur on
an IA64 platform.

Also, if you provide NetCDF libraries and include files in a non-standard
path, the "configure -test" will fail as the script does not pass the given
NetCDF location to the test compilation.

Typical compilation flags would be: -O3 -xW -tpp7 on IA32, -O3 -tpp2
-IPF_fma, -IPF_fp_speculationfast -ftz on IA64.

More compilation flags like align and alias maybe added, but I did not try
them yet. Combination of OMP and MPI gives a very good performance.

-----Original Message-----
From: David Noone [mailto:dcn at Colorado.EDU] 
Sent: Monday, February 16, 2004 23:08
To: Chadalavada, Kalyana
Cc: cam-users at ucar.edu
Subject: Re: [cam-users] RE: CAM2 intel 8.0...


Dear Kalyana,

Please post your modifications to the makefile, and the configuration
files for ESMF. Perhaps if someone working on CAM3 can verify this, an
option to use the intel compiler could be included in the June release?


David






On Sun, 15 Feb 2004 Kalyana_Chadalavada at Dell.com wrote:

> Hello,
>
> Setting large limits (~1 GB) for stack size, data seg size, max mem and
max
> locked mem solved the problem.
>
> Apparently Intel Fortran v8.0 comiler uses large stack space.
>
> Thank you.
>
> Regards,
> Kalyan
>
> -----Original Message-----
> From: Ping Liu [mailto:pliu at hawaii.edu]
> Sent: Monday, February 16, 2004 00:00
> To: Chadalavada, Kalyana
> Cc: pliu at hawaii.edu
> Subject: Re: CAM2 intel 8.0...
>
> My working diary shows
>
> setenv HOST `hostname -s`
>
> can solve the problem.  The compiler is under SGI/Altix 3000.  I will
> make sure if it works when the machine is up later.
>
>
> ----- Original Message -----
> From: Kalyana_Chadalavada at dell.com
> Date: Saturday, February 14, 2004 11:03 pm
> Subject: [cam-users] CAM2 with Intel Compilers V8.0
>
> > Hello,
> >
> > When I compiler CAM2 with Intel Compilers V8.0 (SPMD and SMP with
> > –openmpand also without -openmp) and try to execute it for 30 days
> > or more, it does
> > the full simulation and dies with a segmentation fault in htape_create
> > routine. It works fine for less than 30 days.
> >
> > Did any one try with Intel compilers?
> >
> > Regards,
> >
> > Kalyan
> >
> > _______________________________________________
> > cam-users mailing list
> > cam-users at ucar.edu
> > http://mailman.ucar.edu/mailman/listinfo/cam-users
> >
>
>
> _______________________________________________
> cam-users mailing list
> cam-users at ucar.edu
> http://mailman.ucar.edu/mailman/listinfo/cam-users
>
>

-- 
------------------------------------------------------------------------
PAOS & CIRES, University of Colorado, Boulder, UCB 311, CO 80309-0311
Ph: (303) 735-6073  Fax: (303) 492-3524
http://paos.colorado.edu/~dcn



More information about the cam-users mailing list