PGI and HPL benchmarking

Eswar Dev eswardev at yahoo.com
Mon Sep 17 08:51:30 PDT 2001


Hi cozzi!
I have one built  using  Athlon based cluster. This is
the make file you requested for

#
----------------------------------------------------------------------
# - shell
--------------------------------------------------------------
#
----------------------------------------------------------------------
#
SHELL        = /bin/sh
#
CD           = cd
CP           = cp
LN_S         = ln -s
MKDIR        = mkdir
RM           = /bin/rm -f
TOUCH        = touch
#
#
----------------------------------------------------------------------
# - Platform identifier
------------------------------------------------
#
----------------------------------------------------------------------
#
ARCH         = Linux_ATHLON_CBLAS
#
#
----------------------------------------------------------------------
# - HPL Directory Structure / HPL library
------------------------------
#
----------------------------------------------------------------------
#
TOPdir       = $(HOME)/hpl
INCdir       = $(TOPdir)/include
BINdir       = $(TOPdir)/bin/$(ARCH)
LIBdir       = $(TOPdir)/lib/$(ARCH)
#
HPLlib       = $(LIBdir)/libhpl.a
#
#
----------------------------------------------------------------------
# - Compilers / linkers - Optimization flags
---------------------------
#
----------------------------------------------------------------------
#
CC           = /usr/local/mpich-1.2.1/bin/mpicc
NOOPT        =
CCFLAGS      = -fomit-frame-pointer -O3 -funroll-loops
-W -Wall
#
LINKER       = /usr/local/mpich-1.2.1/bin/mpicc
LINKFLAGS    = $(CCFLAGS)
#
ARCHIVER     = ar
ARFLAGS      = r
RANLIB       = echo
#
#
----------------------------------------------------------------------
# - MPI directories - library
------------------------------------------
#
----------------------------------------------------------------------
# MPinc tells the  C  compiler where to find the
Message Passing library
# header files,  MPlib  is defined  to be the name of 
the library to be
# used. The variable MPdir is only used for defining
MPinc and MPlib.
#
                                           
MPdir        = /usr/local/mpich-1.2.1
MPinc        = -I$(MPdir)/include
MPlib        = $(MPdir)/lib/libmpich.a
#
#
----------------------------------------------------------------------
# - F77 / C interface
--------------------------------------------------
#
----------------------------------------------------------------------
# You can skip this section  if and only if  you are
not planning to use
# a  BLAS  library featuring a Fortran 77 interface. 
Otherwise,  it  is
# necessary  to  fill out the  F2CDEFS  variable  with
 the  appropriate
# options.  **One and only one**  option should be
chosen in **each** of
# the 3 following categories:
#
# 1) name space (How C calls a Fortran 77 routine)
#
# -DAdd_              : all lower case and a suffixed
underscore  (Suns,
#                       Intel, ...),
# -DNoChange          : all lower case (IBM RS6000),
# -DUpCase            : all upper case (Cray),
# -Df77IsF2C          : the FORTRAN compiler in use is
f2c.
#
# 2) C and Fortran 77 integer mapping
#
# -DF77_INTEGER=int   : Fortran 77 INTEGER is a C int,
# -DF77_INTEGER=long  : Fortran 77 INTEGER is a C
long,
# -DF77_INTEGER=short : Fortran 77 INTEGER is a C
short.
#
# 3) Fortran 77 string handling
#
# -DStringSunStyle    : The string address is passed
at the string loca-
#                       tion on the stack, and the
string length is then
#                       passed as  an  F77_INTEGER 
after  all  explicit
#                       stack arguments,
# -DStringStructPtr   : The address  of  a  structure 
is  passed  by  a
#                       Fortran 77  string,  and the
structure is of the
#                       form: struct {char *cp;
F77_INTEGER len;},
# -DStringStructVal   : A structure is passed by value
for each  Fortran
#                       77 string,  and  the 
structure is  of the form:
#                       struct {char *cp; F77_INTEGER
len;},
# -DCrayStyle         : Special option for  Cray 
machines,  which  uses
#                       Cray  fcd  (fortran  character
 descriptor)  for
#                       interoperation.
#
F2CDEFS      =
NOOPT        =
F77          =mpif77
F77LOADER    =mpif77
F77FLAGS     = -O $(NOOPT)
#
#
----------------------------------------------------------------------
# - Linear Algebra library (BLAS or VSIPL)
-----------------------------
     # LAinc tells the  C  compiler where to find the
Linear Algebra  library
# header files,  LAlib  is defined  to be the name of 
the library to be
# used. The variable LAdir is only used for defining
LAinc and LAlib.
#
LAdir        = /home/mpiuser/LAPACK
LAinc        =
LAlib        =
$(HOME)/ATLAS/lib/Linux_ATHLON/libcblas.a
$(HOME)/ATLAS/lib/Linux
_ATHLON/libatlas.a
#
#
----------------------------------------------------------------------
# - HPL includes / libraries / specifics
-------------------------------
#
----------------------------------------------------------------------
#
HPL_INCLUDES = -I$(INCdir) -I$(INCdir)/$(ARCH)
$(LAinc) $(MPinc)
HPL_LIBS     = $(HPLlib) $(LAlib) $(MPlib)
#
# - Compile time options
-----------------------------------------------
#
# -DHPL_COPY_L           force the copy of the panel L
before bcast;
# -DHPL_CALL_CBLAS       call the cblas interface;
# -DHPL_CALL_VSIPL       call the vsip  library;
# -DHPL_DETAILED_TIMING  enable detailed timers;
#
# By default HPL will:
#    *) not copy L before broadcast,
#    *) call the Fortran 77 BLAS interface
#    *) not display detailed timing information.
#
HPL_OPTS     = -DHPL_CALL_CBLAS
# 
#
----------------------------------------------------------------------
#
HPL_DEFS     = $(F2CDEFS) $(HPL_OPTS) $(HPL_INCLUDES)
#
#
--------------------------______________________________________________________
                                   


I am trying to compile the High Performance Computing
Linpack 
Benchmark
(HPL)
software on a cluster that has Portland (PGI) 3.2
compiler. The PGI 
compiler
installs it's own BLAS routines so I would like to use
those. I modify 
one
of the
make files, such as, Make.Linux_PII_FBLAS but still
get errors during 
the
compile. Has anyone successfully built and run this
benchmark with PGI
compilers.

If so, could you please send me one of the make files
you used?


Many thanks

Marc

Univ. of Notre Dame


__________________________________________________
Terrorist Attacks on U.S. - How can you help?
Donate cash, emergency relief information
http://dailynews.yahoo.com/fc/US/Emergency_Information/




More information about the Beowulf mailing list