[gentoo-dev] Re: [gentoo-commits] gentoo-x86 commit in sys-cluster/openmpi: ChangeLog openmpi-1.1.1.ebuild openmpi-1.2.4.ebuild
Sébastien Fabbro <[EMAIL PROTECTED]> posted [EMAIL PROTECTED], excerpted below, on Fri, 14 Dec 2007 19:52:03 +: >> Hmm, i know this isn't a support list, but as it fits quite well: can >> you tell me what configuration files I have to look for? > > At some point, one possibility was to create a > /etc/portage/env// file with your own set of environment > variables in it. But I have not checked lately if we can still do this. Should still work, AFAIK (has been here on ~portage), but is portage (package manager) specific and then only works on the bash side, not the python side, so it won't always work as intended for stuff like features. -- Duncan - List replies preferred. No HTML msgs. "Every nonfree program has a lord, a master -- and if you use the program, he is your master." Richard Stallman -- [EMAIL PROTECTED] mailing list
Re: [gentoo-dev] Re: [gentoo-commits] gentoo-x86 commit in sys-cluster/openmpi: ChangeLog openmpi-1.1.1.ebuild openmpi-1.2.4.ebuild
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Matthias Langer wrote: > On Fri, 2007-12-14 at 16:16 +, Sébastien Fabbro wrote: >>> F77="ifort" FC="ifort" FFLAGS="-O3 -xO" emerge -av openmpi >> This how it should be. To make it automatically reproducible, specify >> environment variables in the configuration files. > > Hmm, i know this isn't a support list, but as it fits quite well: can > you tell me what configuration files I have to look for? At some point, one possibility was to create a /etc/portage/env// file with your own set of environment variables in it. But I have not checked lately if we can still do this. - -- Sébastien -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.6 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFHYt7j1ycZbhPLE2ARAj4YAKCl2ONWLpnEoE71ntWfUlTTh8kmqwCgjQXV o9lmFEUHuZpVofae23MeL3M= =Sd/I -END PGP SIGNATURE- -- [EMAIL PROTECTED] mailing list
Re: [gentoo-dev] Re: [gentoo-commits] gentoo-x86 commit in sys-cluster/openmpi: ChangeLog openmpi-1.1.1.ebuild openmpi-1.2.4.ebuild
On Fri, 2007-12-14 at 16:16 +, Sébastien Fabbro wrote: > -BEGIN PGP SIGNED MESSAGE- > Hash: SHA1 > > On 14/12/07 14:12, Matthias Langer wrote: > > > F77="ifort" FC="ifort" FFLAGS="-O3 -xO" emerge -av openmpi > > This how it should be. To make it automatically reproducible, specify > environment variables in the configuration files. Hmm, i know this isn't a support list, but as it fits quite well: can you tell me what configuration files I have to look for? > > > Maybe someone can explain to me what positive side effects the removal > > of the ifc USE flag has - and why this flag is generally discouraged. > > Positive side effect: avoid cluttering the tree. Why icc/ifc are > discouraged: you can always try to compile every C/C++ package with > CC=icc and fortran packages with F77=ifort or FC=ifort. Packages which > do specify more options with e.g. --enable-icc and friends can be easily > worked out with the toolchain-funcs and fortran eclass, and most of the > time they do nothing more than specify the environment variables. > > If we allow icc/ifc flags, at some point, we could allow a whole bunch > of other compiler flags such as "sunstudio". New keywords for compilers > could be a better idea, but I doubt we have the human resources to test > them. Well, I basically agree. However, it should be noted that fortran cannot be compared with C/C++. The latter are the languages no gentoo box can live without, while fortran is a rather exotic kind of beast, that for mostly historical reasons, is still used in scientific computing. Last but not least, ifc is in the tree, while "sunstudio" is not... To cut a long story short: I'm not completely happy with your reasoning, but you convinced me nonetheless ;-). > > > The reason it disappeared is that it makes gfortran horribly slow when > > compiling against mpi. This is not the case with ifc, and therefore the > > old ebuild in bugzilla emitted a bold warning when emerging with > > USE="-ifc f90-typesafe" but kept quiet if USE="ifc f90-typesave". Thus > > it *did make sense* to control it with a USE flag, at least with the > > "ifc" USE flag being around also. > > If the f90-typesafe options always improve compilation time with > gfortran only, why not using something like this (modified from the > openmpi bump bug): To be exact, "f90-typesafe" slows down gfortran horribly, while ifc seems to run as fast as normally with it... > > if use fortran; then > case ${FORTRANC} in > g77) myconf="${myconf} --disable-mpi-f90" ;; > gfortran) myconf="${myconf} --with-mpi-f90-size=medium" > > myconf="${myconf} --with-f90-max-array-dim=4" > ;; > if*) myconf="${myconf} blah" ;; > *) die "unsupported fortran compiler: ${FORTRANC}" > esac > else > myconf="${myconf} --disable-mpi-f90 --disable-mpi-f77" > fi > Well, openmpi-1.2.4-r1 has just been commited by jsbronder and contains code like this... Matthias signature.asc Description: This is a digitally signed message part
Re: [gentoo-dev] Re: [gentoo-commits] gentoo-x86 commit in sys-cluster/openmpi: ChangeLog openmpi-1.1.1.ebuild openmpi-1.2.4.ebuild
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 14/12/07 14:12, Matthias Langer wrote: > F77="ifort" FC="ifort" FFLAGS="-O3 -xO" emerge -av openmpi This how it should be. To make it automatically reproducible, specify environment variables in the configuration files. > Maybe someone can explain to me what positive side effects the removal > of the ifc USE flag has - and why this flag is generally discouraged. Positive side effect: avoid cluttering the tree. Why icc/ifc are discouraged: you can always try to compile every C/C++ package with CC=icc and fortran packages with F77=ifort or FC=ifort. Packages which do specify more options with e.g. --enable-icc and friends can be easily worked out with the toolchain-funcs and fortran eclass, and most of the time they do nothing more than specify the environment variables. If we allow icc/ifc flags, at some point, we could allow a whole bunch of other compiler flags such as "sunstudio". New keywords for compilers could be a better idea, but I doubt we have the human resources to test them. > The reason it disappeared is that it makes gfortran horribly slow when > compiling against mpi. This is not the case with ifc, and therefore the > old ebuild in bugzilla emitted a bold warning when emerging with > USE="-ifc f90-typesafe" but kept quiet if USE="ifc f90-typesave". Thus > it *did make sense* to control it with a USE flag, at least with the > "ifc" USE flag being around also. If the f90-typesafe options always improve compilation time with gfortran only, why not using something like this (modified from the openmpi bump bug): if use fortran; then case ${FORTRANC} in g77) myconf="${myconf} --disable-mpi-f90" ;; gfortran) myconf="${myconf} --with-mpi-f90-size=medium" myconf="${myconf} --with-f90-max-array-dim=4" ;; if*) myconf="${myconf} blah" ;; *) die "unsupported fortran compiler: ${FORTRANC}" esac else myconf="${myconf} --disable-mpi-f90 --disable-mpi-f77" fi Let the ebuild make reasonable choices instead of making a user trying to find out about undocumented use flags. - -- Sébastien -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.7 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFHYqxv1ycZbhPLE2ARAlRRAJ9BySHhbxAzLOgJdG4I2L3RpCPPNwCgi8aF v3OgmxW4UZj1Gqf7Pg2vBWE= =vYF+ -END PGP SIGNATURE- -- [EMAIL PROTECTED] mailing list
Re: [gentoo-dev] Re: [gentoo-commits] gentoo-x86 commit in sys-cluster/openmpi: ChangeLog openmpi-1.1.1.ebuild openmpi-1.2.4.ebuild
On Fri, 2007-12-14 at 12:13 +, Sébastien Fabbro wrote: > -BEGIN PGP SIGNED MESSAGE- > Hash: SHA1 > > On 14/12/07 10:24, Matthias Langer wrote: > >> On 02:10 Thu 13 Dec , Justin Bronder (jsbronder) wrote: > >>> 1.1 sys-cluster/openmpi/openmpi-1.2.4.ebuild > >>> > >>> file : > >>> http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-cluster/openmpi/openmpi-1.2.4.ebuild?rev=1.1&view=markup > >>> plain: > >>> http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-cluster/openmpi/openmpi-1.2.4.ebuild?rev=1.1&content-type=text/plain > > > > Why have you removed the "ifc" USE flag (as well as a few others), that > > was present in the ebuilds that can still be found at bug 166787? > > For icc and f90-typesafe, I advised him to do so on #gentoo-science. Well, too bad that gfortran generates code that is often not even half as fast as the code generated by ifc. Thus, there is a *very valid* reason to prefer icc over gfortran when it comes to performance critical software, which programs that use MPI almost always are. However, the fortran eclass prefers gfortran over ifc even if both are installed (which is fine by me as long as it can be overridden) and the fortran-compiler-wrapper "mpif90/opal_wrapper" (which is a binary for some reason) wrapps gfortran then. For sure, something like F77="ifort" FC="ifort" FFLAGS="-O3 -xO" emerge -av openmpi still does the trick, but if i want that "f90-typesave" stuff back, this line would have to be certainly a bit longer... Maybe someone can explain to me what positive side effects the removal of the ifc USE flag has - and why this flag is generally discouraged. > > ifc/icc use flags should be avoided (see bug #97929). > Disabling f90-typesafe did not make much sense as a use flag once you > have the fortran one enabled, but why --with-mpi-f90-size=medium" > and "--with-f90-max-array-dim=4" disappeared I don't know. The reason it disappeared is that it makes gfortran horribly slow when compiling against mpi. This is not the case with ifc, and therefore the old ebuild in bugzilla emitted a bold warning when emerging with USE="-ifc f90-typesafe" but kept quiet if USE="ifc f90-typesave". Thus it *did make sense* to control it with a USE flag, at least with the "ifc" USE flag being around also. > For the gm and gx flags, I don't know, and there is still a nocxx one. I'm not qualified to talk about these flags as I've never used them. Matthias signature.asc Description: This is a digitally signed message part
Re: [gentoo-dev] Re: [gentoo-commits] gentoo-x86 commit in sys-cluster/openmpi: ChangeLog openmpi-1.1.1.ebuild openmpi-1.2.4.ebuild
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 14/12/07 10:24, Matthias Langer wrote: >> On 02:10 Thu 13 Dec , Justin Bronder (jsbronder) wrote: >>> 1.1 sys-cluster/openmpi/openmpi-1.2.4.ebuild >>> >>> file : >>> http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-cluster/openmpi/openmpi-1.2.4.ebuild?rev=1.1&view=markup >>> plain: >>> http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-cluster/openmpi/openmpi-1.2.4.ebuild?rev=1.1&content-type=text/plain > > Why have you removed the "ifc" USE flag (as well as a few others), that > was present in the ebuilds that can still be found at bug 166787? For icc and f90-typesafe, I advised him to do so on #gentoo-science. ifc/icc use flags should be avoided (see bug #97929). Disabling f90-typesafe did not make much sense as a use flag once you have the fortran one enabled, but why --with-mpi-f90-size=medium" and "--with-f90-max-array-dim=4" disappeared I don't know. For the gm and gx flags, I don't know, and there is still a nocxx one. - -- Sébastien -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.7 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFHYnNi1ycZbhPLE2ARAq10AKCtnkZMWBkws7lD90bNAziSc4XJ3wCgiDD4 T5oOmc65RMnjswIBlHHh3Yg= =VcUX -END PGP SIGNATURE- -- [EMAIL PROTECTED] mailing list
Re: [gentoo-dev] Re: [gentoo-commits] gentoo-x86 commit in sys-cluster/openmpi: ChangeLog openmpi-1.1.1.ebuild openmpi-1.2.4.ebuild
> On 02:10 Thu 13 Dec , Justin Bronder (jsbronder) wrote: > > 1.1 sys-cluster/openmpi/openmpi-1.2.4.ebuild > > > > file : > > http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-cluster/openmpi/openmpi-1.2.4.ebuild?rev=1.1&view=markup > > plain: > > http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-cluster/openmpi/openmpi-1.2.4.ebuild?rev=1.1&content-type=text/plain Why have you removed the "ifc" USE flag (as well as a few others), that was present in the ebuilds that can still be found at bug 166787? Matthias signature.asc Description: This is a digitally signed message part
[gentoo-dev] Re: [gentoo-commits] gentoo-x86 commit in sys-cluster/openmpi: ChangeLog openmpi-1.1.1.ebuild openmpi-1.2.4.ebuild
On 02:10 Thu 13 Dec , Justin Bronder (jsbronder) wrote: > 1.1 sys-cluster/openmpi/openmpi-1.2.4.ebuild > > file : > http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-cluster/openmpi/openmpi-1.2.4.ebuild?rev=1.1&view=markup > plain: > http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-cluster/openmpi/openmpi-1.2.4.ebuild?rev=1.1&content-type=text/plain > if [[ -n "${FORTRANC}" ]]; then This should be 'if use fortran' like the one earlier, to make it clear what you're really testing: whether it's a fortran-enabled build. > if [[ "${FORTRANC}" = "g77" ]]; then > myconf="${myconf} --disable-mpi-f90" > elif [[ "${FORTRANC}" = "gfortran" ]]; then > # Because that's just a pain in the butt. > myconf="${myconf} --with-wrapper-fflags=-I/usr/include" > fi > else > myconf="${myconf} > --disable-mpi-f90 > --disable-mpi-f77" > fi > > econf ${myconf} \ > $(use_enable !nocxx mpi-cxx) \ > $(use_enable romio romio-io) \ > $(use_enable smp smp-locks) \ > $(use_enable heterogeneous heterogeneous) \ You don't need the second argument, it's identical to the first if not present. > $(use_with pbs tm /usr/$(get_libdir)/pbs) \ > $(use_with slurm) \ > $(use_enable ipv6) \ > || die "econf failed" > > emake || die "emake failed" > } > > src_install () { > make DESTDIR="${D}" install || die "make install failed" > dodoc README AUTHORS NEWS VERSION > } Does emake work? Thanks, Donnie -- [EMAIL PROTECTED] mailing list