[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [bgl-discuss] xlc/xlf versions of mpicc/mpif77 etc?
I have some scripts in ~balay/bin.
I choose to have a 'different' script name as user-interface for each
compiler
mpicc.ibm, mpicc.gnu
vs
mpicc, export MPICH_F77 xlf-opt mpicc
They are derived off IBM's mpicc scripts [wrappers over gcc]
Satish
-------------------
login2 balay/bin> diff /bgl/BlueLight/ppcfloor/bglsys/bin/mpicc ~balay/bin/mpicc.ibm
39c39
< CC=" /bgl/BlueLight/DRV100_2005-050311PM/ppc/blrts-gnu/bin/powerpc-bgl-blrts-gnu-gcc"
---
> CC=" /soft/apps/ibmcmp-20050414/vac/7.0/bin/xlc -F /soft/apps/ibmcmp-20050414/etc/opt/ibmcmp/vac/7.0/blrts-vac.cfg"
41c41
< MPI_CFLAGS=" -g -gdwarf-2 -O2"
---
> MPI_CFLAGS=" "
44c44
< MPI_OTHERLIBS=" -L/bgl/BlueLight/DRV100_2005-050311PM/ppc/bglsys/lib -lmsglayer.rts -ldevices.rts -lrts.rts -ldevices.rts -lrts.rts "
---
> MPI_OTHERLIBS=" -L/bgl/BlueLight/DRV100_2005-050311PM/ppc/bglsys/lib -lmsglayer.rts -ldevices.rts -lrts.rts -ldevices.rts -lrts.rts -lc -lnss_files -lnss_dns -lresolv "
-----------------------
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.
>
>
- --------------------------------------------------------------------
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.