Gentoo Archives: gentoo-dev

From: Donnie Berkholz <dberkholz@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] ICC Profile
Date: Fri, 18 Jul 2008 04:56:08
Message-Id: 20080718045603.GA7446@comet
In Reply to: [gentoo-dev] ICC Profile by Adam Stylinski
1 On 14:23 Thu 17 Jul , Adam Stylinski wrote:
2 > The intel C Compiler (icc) has an ebuild for gentoo and the wiki has a
3 > script to integrate it with portage. This script works will in terms
4 > of building binaries, however when mixed with gcc environments there
5 > are massive linking issues. I propose that an ICC profile is made
6 > which contains specific versions and default flags for people who want
7 > to build a mixed icc-gcc environment. ICC is much faster than GCC and
8 > although not free, offers a free non-commercial license. I would be
9 > very interested in this project and more than willing to help to the
10 > best of my abilities. I've already been trying to maintain a mixed
11 > environment with some luck, while there have been a lot of problems
12 > using dynamically linked libraries (ld from intel and ld from gcc
13 > don't always get along), my system is substatially faster. The kernel
14 > obviously will still be built under gcc as well as bash (unless intel
15 > helps submit patches to make the code work with their compiler).
16 > There are many tools icc has to offer for vectorization. If these
17 > were streamlined into Gentoo with a fetch restriction for ICC, a
18 > bootsrapping boot disk could be made and result in a very fast
19 > distribution. -- gentoo-dev@l.g.o mailing list
20
21 Adam,
22
23 I've already got a mixed system that works reasonably well. I use
24 /etc/portage/env/ to control which packages build with icc and
25 icc-specific CFLAGS by having /etc/portage/env/$CATEGORY/$PN be symlinks
26 to /etc/portage/env/env.icc with these contents:
27
28 echo " * Exporting: Intel compilers in $EBUILD_PHASE"
29 CC="icc"
30 CXX="icc"
31 FC="ifort"
32 F77="ifort"
33 FFLAGS="-openmp -parallel -ipo -xO -O2 -no-prec-div"
34 FCFLAGS="${FFLAGS}"
35
36 export CC CXX FC F77 FFLAGS FCFLAGS
37
38 Is what you're proposing here an improvement over something like the
39 above setup? If so, could you explain how?
40
41 --
42 Thanks,
43 Donnie
44
45 Donnie Berkholz
46 Developer, Gentoo Linux
47 Blog: http://dberkholz.wordpress.com