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

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



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.