[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [bgl-discuss] xlc/xlf versions of mpicc/mpif77 etc?



The config was from when compiler installs were broken - hence just
workarrounds.

But now - one can just use the xlc/blrts_xlc etc and not specify the
configs at all.. [if not using mpiXX wrappers]

MPI_CC=blrts_xlc
MPI_F77=blrts_xlf
CC=xlc
F77=xlf
MPI_INC="-I/bgl/BlueLight/DRV100_2005-050311PM/ppc/bglsys/include"
MPI_LIBS="-L/bgl/BlueLight/DRV100_2005-050311PM/ppc/bglsys/lib -lmpich.rts -lmsglayer.rts -lrts.rts -ldevices.rts -lc"

Satish

On Wed, 11 May 2005, Susan Coghlan wrote:

> 
> You should not use '/soft/apps/ibmcmp-20050414' anymore.  You need to use
> /opt/ibmcmp instead.  This is because the BGL compilers have hard coded
> paths pointing to /opt/ibmcmp.  The fact that you used the 20050414 works
> fine on login[1-3] but not on login4 which is set up with the old
> compilers for testing for Ray Loy.  If you were to use the 20050414 path
> on login4 you would get a mix of stuff, some from 20050414 and some from
> /opt/ibmcmp.
> 
> On Wed, 11 May 2005, Anthony Chan wrote:
> 
> >
> > Here are the values that I just used to successfully compile MPE with
> > xlc/xlf:
> >
> > MPI_CC="/soft/apps/ibmcmp-20050414/vac/7.0/bin/xlc -F
> > /soft/apps/ibmcmp-20050414/etc/opt/ibmcmp/vac/7.0/blrts-vac.cfg"
> >
> > MPI_F77="/soft/apps/ibmcmp-20050414/xlf/9.1/bin/xlf -F
> > /soft/apps/ibmcmp-20050414/etc/opt/ibmcmp/xlf/9.1/blrts-xlf.cfg"
> >
> > CC="/soft/apps/ibmcmp-20050414/vac/7.0/bin/xlc -F
> > /soft/apps/ibmcmp-20050414/etc/opt/ibmcmp/vac/7.0/vac.cfg"
> >
> > F77="/soft/apps/ibmcmp-20050414/xlf/9.1/bin/xlf -F
> > /soft/apps/ibmcmp-20050414/etc/opt/ibmcmp/xlf/9.1/xlf.cfg"
> >
> > MPI_INC="-I/bgl/BlueLight/DRV100_2005-050311PM/ppc/bglsys/include"
> >
> > MPI_LIBS="-L/bgl/BlueLight/DRV100_2005-050311PM/ppc/bglsys/lib -lmpich.rts
> > -lmsglayer.rts -lrts.rts -ldevices.rts -lc"
> >
> > From my experience of using new compilers, the hard part is locating the
> > above values.  As Susan has pointed out, IBM seems to have changed the
> > .cfg location in the newer compiler.  With mpicc-xlc.conf, the work is
> > still on us.  Since IBM is the one who packages the compiler release, it
> > should be easy for them to make up mp* or .conf scripts with their
> > distribution, right ?
> >
> > A.Chan
> >
> > On Wed, 11 May 2005, William Gropp wrote:
> >
> > > At 12:03 PM 5/11/2005, Susan Coghlan wrote:
> > >
> > > >No, users do not run vac_configure.  IBM changed where the config
> > > >files were located from one version of the bgl compilers to another.  It
> > > >sounds like the Katherine's scripts except the stuff in the old location.
> > >
> > > Proof of why I'd like to use the mechanism for conf files that is already
> > > wired into the IBM scripts (since they're really the MPICH2 scripts).
> > >
> > > For example, here is all that was necessary for xlc with the previous compilers
> > >
> > > cat mpicc-xlc.conf
> > > #!
> > > #
> > > CC=" /opt/ibmcmp/vac/7.0/bin/xlc -F /etc/opt/ibmcmp/blrts-ppcfloor.cfg"
> > > MPI_OTHERLIBS=" -L/bgl/BlueLight/DRV521_2004-050113/ppc/bglsys/lib
> > > -lmsglayer.rts /opt/ibmcmp/xlf/9.1/blrts_dev_lib/libxlopt.a
> > > -ldevices.rts-merge -lc-merge "
> > > MPI_CFLAGS=" "
> > >
> > > This isolates the changes needed to just the few lines that control the
> > > compilers and libraries.
> > >
> > > If we know what the values for the compiler and the libraries are for the
> > > various options (e.g., gcc, xlf), I can create the files.
> > >
> > > Bill
> > >
> > >
> > > >On Wed, 11 May 2005, Anthony Chan wrote:
> > > >
> > > > >
> > > > > Just tried to compile a simple mpi programs with ~riley/bin/mpxlc
> > > > >
> > > > > mpe_work/build_ibm> ~riley/bin/mpxlc test_mpi.c
> > > > > /opt/ibmcmp/vac/7.0/bin/xlc: 1501-238 configuration file
> > > > > /etc/opt/ibmcmp/blrts.cfg does not exist
> > > > > /opt/ibmcmp/vac/7.0/bin/xlc: 1501-270 You may use the vac_configure tool
> > > > > to create a configuration file.
> > > > >
> > > > > Is user supposed to use vac_configure to configure the compilers ?
> > > > >
> > > > > A.Chan
> > > > >
> > > > > On Wed, 11 May 2005, Katherine M Riley wrote:
> > > > >
> > > > > >
> > > > > > these are IBMs modified scripts.  Bob gave them for free distribution
> > > > > > at the apps workshop.
> > > > > >
> > > > > > -katherine
> > > > > >
> > > > > > On May 11, 2005, at 11:17 AM, Anthony Chan wrote:
> > > > > >
> > > > > > >
> > > > > > > Hi Katherine,
> > > > > > >
> > > > > > > Since all the ~riley/bin/mp* compiler wrappers have IBM's copyright
> > > > > > > statements, I wonder if the compiler wrappers are provided by IBM or
> > > > > > > you
> > > > > > > modified from AIX's mp* scripts to be used in BG/L ?
> > > > > > >
> > > > > > > A.Chan
> > > > > > >
> > > > > > > On Wed, 11 May 2005, Katherine M Riley wrote:
> > > > > > >
> > > > > > >>
> > > > > > >> And we also has a suite of mp* compile scripts in ~riley/bin.
> > > > > > >>
> > > > > > >> -katherine
> > > > > > >>
> > > > > > >> On May 11, 2005, at 10:14 AM, William Gropp wrote:
> > > > > > >>
> > > > > > >>> At 09:58 AM 5/11/2005, Andrew Siegel wrote:
> > > > > > >>>> Agreed. We will make that wiki section(link info is there actually)
> > > > > > >>>> more
> > > > > > >>>> prominent, and one of us will write an mpicc/mpif77 etc script.
> > > > > > >>>
> > > > > > >>> I can update the scripts (the MPICH2 scripts that IBM distributes
> > > > > > >>> have
> > > > > > >>> all of the necessary features, or if they don't, we should update
> > > > > > >>> them
> > > > > > >>> in MPICH2 and get IBM to distribute them).  In fact, all that is
> > > > > > >>> needed is to add some files to the etc directory (to enable the
> > > > > > >>> environment variable/-conf argument method for switching between the
> > > > > > >>> compilers) (other than fixing the -g -O2 in the current scripts).  In
> > > > > > >>> fact, additional configurations can be defined that enable
> > > > > > >>> recommended
> > > > > > >>> optimization options with something like SETENV MPICH_F77 xlf-opt, as
> > > > > > >>> long as there is an mpif77-xlf-opt.conf file in the etc directory.
> > > > > > >>>
> > > > > > >>> Bill
> > > > > > >>>
> > > > > > >>>
> > > > > > >>>
> > > > > > >>>
> > > > > > >>>> -----Original Message-----
> > > > > > >>>> From: William Gropp [mailto:gropp@xxxxxxxxxxx]
> > > > > > >>>> Sent: Wednesday, May 11, 2005 9:54 AM
> > > > > > >>>> To: Andrew Siegel
> > > > > > >>>> Cc: discuss@xxxxxxxxxxxxxxx
> > > > > > >>>> Subject: RE: [bgl-discuss] xlc/xlf versions of mpicc/mpif77 etc?
> > > > > > >>>>
> > > > > > >>>> At 09:38 AM 5/11/2005, Andrew Siegel wrote:
> > > > > > >>>>> I think we all just invoke the compilers directly and include/link
> > > > > > >>>>> explicitly (would be nice to have a wrapper though). Did you want a
> > > > > > >>>> sample
> > > > > > >>>>> makefile, or were you just curious if there was an alternative ...
> > > > > > >>>>
> > > > > > >>>> I'm surprised that invoking the compiler directly is acceptable; the
> > > > > > >>>> extra
> > > > > > >>>> link information is awkward to type and error-prone.  I'm trying to
> > > > > > >>>> understand why the mpicc/mpif77/etc. scripts are not used.  (It is
> > > > > > >>>> not easy
> > > > > > >>>> to find the correct info for compiling and linking files on BG/L;
> > > > > > >>>> there's
> > > > > > >>>> no obvious link on the BGL web pages, for example.)  For my codes, I
> > > > > > >>>> expect
> > > > > > >>>> the process to be
> > > > > > >>>>
> > > > > > >>>> set
> > > > > > >>>>
> > > > > > >>>> MPICC = path-to-mpicc
> > > > > > >>>> MPIF77 = path-to-mpif77
> > > > > > >>>>
> > > > > > >>>> in my Makefile, followed by
> > > > > > >>>>
> > > > > > >>>> make
> > > > > > >>>>
> > > > > > >>>> followed by (in many cases a script that executes more than one job)
> > > > > > >>>>
> > > > > > >>>> mpirun or mpiexec
> > > > > > >>>>
> > > > > > >>>> followed by a step that gathers the results of the run.  Before the
> > > > > > >>>> update,
> > > > > > >>>> this was all that I needed to do to successfully use either the Gnu
> > > > > > >>>> or XL
> > > > > > >>>> compilers.  This seems simple to me, but if there is an easier way,
> > > > > > >>>> I'd
> > > > > > >>>> like to use it.  Surely you don't all remember that long link line
> > > > > > >>>> with the
> > > > > > >>>> various exports etc?  My memory isn't that good anymore :(
> > > > > > >>>>
> > > > > > >>>> Bill
> > > > > > >>>>
> > > > > > >>>>
> > > > > > >>>>
> > > > > > >>>>> -----Original Message-----
> > > > > > >>>>> From: owner-discuss@xxxxxxxxxxxxxxx
> > > > > > >>>> [mailto:owner-discuss@xxxxxxxxxxxxxxx]
> > > > > > >>>>> On Behalf Of William Gropp
> > > > > > >>>>> Sent: Wednesday, May 11, 2005 9:31 AM
> > > > > > >>>>> To: discuss@xxxxxxxxxxxxxxx
> > > > > > >>>>> Subject: [bgl-discuss] xlc/xlf versions of mpicc/mpif77 etc?
> > > > > > >>>>>
> > > > > > >>>>> I had set things up so that
> > > > > > >>>>>
> > > > > > >>>>> setenv MPICH_F77 xlf
> > > > > > >>>>> mpif77 ...
> > > > > > >>>>>
> > > > > > >>>>> would get you the xlf version of mpif77 (with the correct libraries
> > > > > > >>>> and
> > > > > > >>>>> options), and similarly for the C, F90, and C++ compilers. This
> > > > > > >>>>> also
> > > > > > >>>> worked
> > > > > > >>>>> with mpif77 -conf=xlf ... .  I find this particularly convenient
> > > > > > >>>> because it
> > > > > > >>>>> makes it easy to use existing makefiles and switch between the
> > > > > > >>>>> compilers.  With the compiler upgrade, these have vanished.  What
> > > > > > >>>>> do
> > > > > > >>>> people
> > > > > > >>>>> to to use the xl compilers now?
> > > > > > >>>>>
> > > > > > >>>>> I also noted that the mpicc script sets the compiler flags -g -O2,
> > > > > > >>>> which it
> > > > > > >>>>> should not do (IBM needs to fix this in the distributions).
> > > > > > >>>>>
> > > > > > >>>>> Bill
> > > > > > >>>>>
> > > > > > >>>>> William Gropp
> > > > > > >>>>> http://www.mcs.anl.gov/~gropp
> > > > > > >>>>>
> > > > > > >>>>> -
> > > > > > >>>> --------------------------------------------------------------------
> > > > > > >>>>> To add or remove yourself from this mailing list, use the
> > > > > > >>>>> 'notifyme'
> > > > > > >>>>> command on any BGL machine. To remove: notifyme -n, to add:
> > > > > > >>>>> notifyme
> > > > > > >>>> -y.
> > > > > > >>>>
> > > > > > >>>> William Gropp
> > > > > > >>>> http://www.mcs.anl.gov/~gropp
> > > > > > >>>>
> > > > > > >>>>
> > > > > > >>>>
> > > > > > >>>> -
> > > > > > >>>> --------------------------------------------------------------------
> > > > > > >>>> To add or remove yourself from this mailing list, use the 'notifyme'
> > > > > > >>>> command on any BGL machine. To remove: notifyme -n, to add: notifyme
> > > > > > >>>> -y.
> > > > > > >>>
> > > > > > >>> William Gropp
> > > > > > >>> http://www.mcs.anl.gov/~gropp
> > > > > > >>> -
> > > > > > >>> --------------------------------------------------------------------
> > > > > > >>> To add or remove yourself from this mailing list, use the 'notifyme'
> > > > > > >>> command on any BGL machine. To remove: notifyme -n, to add: notifyme
> > > > > > >>> -y.
> > > > > > >>>
> > > > > > >> ------------------------------------------------------------------
> > > > > > >>
> > > > > > >> Katherine M Riley
> > > > > > >> Argonne National Lab
> > > > > > >> Ph   : (630) 252-5786
> > > > > > >> Cell : (773) 351-6042
> > > > > > >>
> > > > > > >> - --------------------------------------------------------------------
> > > > > > >> To add or remove yourself from this mailing list, use the 'notifyme'
> > > > > > >> command on any BGL machine. To remove: notifyme -n, to add: notifyme
> > > > > > >> -y.
> > > > > > >>
> > > > > > >>
> > > > > > >>
> > > > > > ------------------------------------------------------------------
> > > > > >
> > > > > > Katherine M Riley
> > > > > > Argonne National Lab
> > > > > > Ph   : (630) 252-5786
> > > > > > Cell : (773) 351-6042
> > > > > >
> > > > > >
> > > > >
> > > > > - --------------------------------------------------------------------
> > > > > To add or remove yourself from this mailing list, use the 'notifyme'
> > > > > command on any BGL machine. To remove: notifyme -n, to add: notifyme -y.
> > > > >
> > > > >
> > >
> > > William Gropp
> > > http://www.mcs.anl.gov/~gropp
> > >
> > >
> >
> >
> 
> - --------------------------------------------------------------------
> To add or remove yourself from this mailing list, use the 'notifyme'
> command on any BGL machine. To remove: notifyme -n, to add: notifyme -y.
> 
> 

- --------------------------------------------------------------------
To add or remove yourself from this mailing list, use the 'notifyme'
command on any BGL machine. To remove: notifyme -n, to add: notifyme -y.