[Pw_forum] AMD64 opteron pgi linker warning
Yingwen Song
song at r6.dion.ne.jp
Wed Aug 11 16:12:14 CEST 2004
Hi, I am Yingwen Song @ The University of Tokyo.
I did not meet any problem by using the following make.sys on Opteron
246 CPU with PGI compiler (version 5.1.6). Wish you good luck.
--
Yingwen Song <song at cello.t.u-tokyo.ac.jp>
---------------------make.sys START--------------------------------------------
# make.sys. Generated from make.sys.in by configure.
CC = pgcc
CCFLAGS = -O3 -tp k8-64 -fast -Munroll -Mvect=sse -Mvect=assoc,cachesize:1048576 -Mcache_align -Kieee -Mvect=prefetch $(DFLAGS) $(IFLAGS)
# See include/defs.h.README for a list of precompilation options
# (possible arguments to -D or -U) and their meaning
DFLAGS = -D__LINUX64 -D__PGI -D__FFTW -D__USE_INTERNAL_FFTW
IFLAGS = -I. -I../include -I../Modules -I../PW -I../PH
CPP = cpp
CPPFLAGS = -P -traditional $(DFLAGS) $(IFLAGS)
F77 = pgf77
F90 = pgf90
FFLAGS = -fast -r8 -O3 -tp k8-64 -Munroll -Mvect=sse -Mvect=assoc,cachesize:1048576 -Mcache_align -Kieee -Mvect=prefetch
F77FLAGS = $(FFLAGS) $(IFLAGS)
F90FLAGS = $(FFLAGS) $(DFLAGS) $(IFLAGS)
F77FLAGS_NOOPT = -O0
LD = pgf90
LDFLAGS = $(LIBOBJS) $(LIBS)
LIBOBJS = ../flib/ptools.a ../flib/flib.a ../clib/clib.a
# LIBS must contain the location of all needed external libraries
LIBS = -llapack -lblas
# MYLIB can be one of the following (depending on LIBS):
# blas : compile the local copy of blas routines
# lapack : compile the local copy of lapack routines
# blas_and_lapack : all of the above - use this for a quick test
# or if you don't have an optimized blas/lapack library
# lapack_ibm : compile only lapack routines not present in IBM ESSL
# use this together with IBM ESSL
# lapack_t3e : compile only lapack routines not present in T3E scilib
# use this together with T3E scilib
# lapack_mkl : compile only lapack routines not present in Intel MKL
# use this together with Intel MKL
MYLIB =
AR = ar
ARFLAGS = ruv
---------------------make.sys END--------------------------------------------
On Wed, 11 Aug 2004 07:24:43 -0400 (EDT)
aaron at nemo.physics.ncsu.edu wrote:
> Hi all,
>
> We are having a problem with a linker warning and spurious results in
> cp.x. The problem is described below, and was alluded to in the thread
> dated Tue, 13 Apr 2004 for pw.x entitled "AMD64 and IFC ... and PGI":
>
> Having a terrible time compiling our application using pgi
> compilers on
> AMD64 Opteron. Trying to compile just for single processor (no MPI) we
> get warnings like the following:
>
> /usr/bin/ld: Warning: alignment 16 of symbol `timex_mod_1_' in modules.o
> is smaller than 32 in cplib.o
> /usr/bin/ld: Warning: alignment 16 of symbol `cell_base_2_' in
> ../Modules/cell_base.o is smaller than 32 in cplib.o
> /usr/bin/ld: Warning: alignment 16 of symbol `control_flags_2_' in
> ../Modules/control_flags.o is smaller than 32 in cplib.o
>
> /usr/bin/ld: Warning: alignment 16 of symbol `control_flags_0_' in
> ../Modules/control_flags.o is smaller than 32 in cplib.o
>
> /usr/bin/ld: Warning: alignment 16 of symbol `electrons_base_0_' in
> ../Modules/electrons_base.o is smaller than 32 in cplib.o
>
> The application builds and runs, however we get very unexpected results.
> Trying to clear warnings to eliminate unexpected results.
> We suspect misalignment may be giving incorrect numerical results.
>
> We have tried -Mcache_align.
>
> Are there other flags to set?
>
> Here is our make.sys
>
> # make.sys. Generated from make.sys.in by configure.
> CC = pgcc
> CCFLAGS = -fast $(DFLAGS) $(IFLAGS)
> # See include/defs.h.README for a list of precompilation options
> # (possible arguments to -D or -U) and their meaning
> DFLAGS = -D__LINUX64 -D__PGI -D__FFTW -D__USE_INTERNAL_FFTW
> IFLAGS = -I. -I../include -I../Modules -I../PW -I../PH
> CPP = cpp
> CPPFLAGS = -P -traditional $(DFLAGS) $(IFLAGS)
> F77 = pgf77
> F90 = pgf90
> FFLAGS = -fast -r8
> F77FLAGS = $(FFLAGS) $(IFLAGS)
> F90FLAGS = $(FFLAGS) $(DFLAGS) $(IFLAGS)
> F77FLAGS_NOOPT = -O0
> LD = pgf90
> LDFLAGS = $(LIBOBJS) $(LIBS)
> LIBOBJS = ../flib/ptools.a ../flib/flib.a ../clib/clib.a
> # LIBS must contain the location of all needed external libraries
> LIBS = -llapack -lblas
> # MYLIB can be one of the following (depending on LIBS):
> # blas : compile the local copy of blas routines
> # lapack : compile the local copy of lapack routines
> # blas_and_lapack : all of the above - use this for a quick test
> # or if you don't have an optimized blas/lapack library
> # lapack_ibm : compile only lapack routines not present in IBM ESSL
> # use this together with IBM ESSL
> # lapack_t3e : compile only lapack routines not present in T3E scilib
> # use this together with T3E scilib
> # lapack_mkl : compile only lapack routines not present in Intel MKL
> # use this together with Intel MKL
> MYLIB =
> AR = ar
> ARFLAGS = ruv
>
>
>
> Please help!
>
> Thanks in Advance,
>
> Lee Atkinson,
>
> _______________________________________________
> Pw_forum mailing list
> Pw_forum at pwscf.org
> http://www.democritos.it/mailman/listinfo/pw_forum
More information about the Pw_forum
mailing list