PGI and Scyld

David T. Walker dwalker at erim-int.com
Mon May 21 13:54:32 PDT 2001


We are currently running PGI Fortran on 16 node cluster under Scyld. 

As I recall, the way we did it was to install the Scyld 27BZ-7 distribution.  We then installed the Portland compilers using Portland's installation procedure on the front-end node.  We then used the BeoMPI rpm from Scyld to rebuild BeoMPI using the Portland compilers. 

The approach for building BeoMPI is to first patch the MPICH 1.2.0 distribution to get the BeoMPI mods, and then build it.  This is accomplished with a Makefile located in the beompi-1.0.14 directory.  We made the following changes to the Makefile to build BeoMPI using the PGI compilers  (the first two lines that are commented out are from the original Makefile): 

...
mpich-1.2.0: .patch
#	cd mpich-1.2.0/ && BINDIR="" LIBDIR="" ./configure --with-device=ch_p4 --lib=-lbproc -rsh=/bin/true
#	cd mpich-1.2.0/ && BINDIR="" LIBDIR="" make
#
#       For building with PGI compilers
#
	cd mpich-1.2.0/ && BINDIR="" LIBDIR="" ./configure --with-device=ch_p4\
                                                           --lib=-lbproc \
                                                           -rsh=/bin/true \
                                                           -c++=pgCC \
                                                           -cc=pgcc \
                                                           -fc=pgf77 \
                                                           -cflags="-Msignextend -tp px -DUSE_U_INT_FOR_XDR -DHAVE_RPC_RPC_H=1" \
                                                           -opt=-fast \
                                                           -fflags="-tp px" \
                                                           -c++flags="-tp px" \
                                                           -f90flags="-tp px" \
                                                           -f90=pgf90 \
                                                           -prefix=/usr/local/mpich \
                                                           -comm=shared
	cd mpich-1.2.0/ && BINDIR="" LIBDIR="" sed -e 's at MPIR_HOME   = .*$@MPIR_HOME   = $$\\PGI/linux86@' Makefile > Makefile.pgi
	cd mpich-1.2.0/ && BINDIR="" LIBDIR="" make clean
	cd mpich-1.2.0/ && BINDIR="" LIBDIR="" make mpi
#
...

This assumes that $PGI is the path to the PGI compilers (set as recommended by Portland).  It also builds for a generic Pentium (-tp px).

Portland has on its web site instructions for building MPICH from scratch using the PGI compilers.  The above modifications to the Scyld makefile were derived from those instructions.





>I'm currently involved in a summer project to port some large
>astrophysics code to a higher performance system from a DEC/VMS Alpha
>machine.  One of the options that is being looked at strongly is using
>an Intel/Linux cluster.
>
>Previously, a small group of us had installed a small test cluster using
>the Scyld prepackaged software.  We built a few (C) test programs, found
>some good approximations to Pi, etc...
>
>Now, however, we are moving on to the real stuff.  Unfortunately, the
>f77 code is not readily compiled by g77,  however the PGI suite works
>just fine.
>
>What are some of the trials and tribulations associated with running the
>PGI compilers over BPROC.  Is it worth my time?  Should I use clean
>installs of RedHat (or whatever) onto the slaves, then compile MPICH
>using the PGI suite, installing all the libraries on the slaves.  Is
>compiling BeoMPI with the PGI tools a problem, or is it less trouble
>than I think.
>
>I have no problem homebrewing my own setup if that's in fact the easiest
>way to go.
>
>thanks,
>Geoff
>
>
>
>_______________________________________________
>Beowulf mailing list, Beowulf at beowulf.org
>To change your subscription (digest mode or unsubscribe) visit http://www.beowulf.org/mailman/listinfo/beowulf





More information about the Beowulf mailing list