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

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




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.