Fw: semi HEADS UP: icc support committed

From: Alexander Leidinger (Alexander_at_Leidinger.net)
Date: 03/13/04

  • Next message: Alexander Leidinger: "Re: semi HEADS UP: icc support committed"
    Date: Sat, 13 Mar 2004 19:11:17 +0100
    To: current@freebsd.org
    
    

    Marius told be his mail was blocked by mailman, so I resend it, as it
    contains some information which I forgot to tell because of some time
    constraints today...

    Bye,
    Alexander.

    Begin forwarded message:

    Date: Sat, 13 Mar 2004 14:47:47 +0100
    From: Marius Strobl <marius@alchemy.franken.de>
    To: Alexander Leidinger <Alexander@Leidinger.net>
    Cc: current@freebsd.org
    Subject: Re: semi HEADS UP: icc support committed

    On Sat, Mar 13, 2004 at 12:30:24PM +0100, Alexander Leidinger wrote:
    > Hi,
    >
    > Tom Rhodes committed my icc patches. This should have no impact on
    > compiles with gcc, but allows to compile the kernel with Intels C/C++
    > compiler.
    >
    > To compile the kernel with icc, please make sure you have the latest
    > version of lang/icc7 (I committed an update to the port some minutes
    > ago) and add the bin directory to the PATH as requested by the
    > post-install message. Unfortunately compiling the kernel with lang/icc
    > (this is icc v8) results in a broken kernel (doesn't detect the FPU).

    I.e. update to the latest port versions _after_ you updated to a
    FreeBSD containing the ICC changes, because the ICC ports depend on
    the __FreeBSD_version bump (to 502108), otherwise you'll have
    problems compiling userland sources with ICC.

    >
    > Additionally you need to have an updated share/mk, building and
    > installing the world takes care of this.
    >
    > Now create a new kernel compile directory (e.g. via "config -d
    > ../compile/MYKERNEL_icc MYKERNEL") and cd into it. Compiling with icc is
    > like compiling with gcc, you just have to tell the build infrastructure
    > to use icc as the compiler: "CC=icc make depend && CC=icc make".
    >
    > You should also add the appropriate CFLAGS, either by defining it on the
    > command line or by modifying make.conf:
    > ---snip---
    > .if ${CC} == icc
    > CFLAGS=-O2 -ip
    > COPTFLAGS=-O2 -ip
    > .else
    > CFLAGS=-O -pipe
    > COPTFLAGS=-O -pipe
    > .endif
    > ---snip---
    >
    > Don't compile with -ipo, the build infrastructure uses ld directly to
    > link the kernel and the modules, but -ipo needs the link step to be
    > performed with Intel's linker.

    To give a bit more details, using -ipo doesn't break the kernel, but
    currently gains you nothing as the additional optimizer information
    that is generated when using -ipo isn't used, so it's just a waste of
    CPU time and disk space.

    >
    > If you use the sound modules you have to add them into the kernel, the
    > sound modules are known to fail to load.
    >
    > You can use gcc compiled modules with an icc compiled kernel (and vice
    > versa).
    >
    > A P4 optimized kernel seems to boot faster on a P4 but I haven't
    > verified this with some measurements, so this may be more of a wish than
    > reality. If someone wants to run some benchmarks (no, I don't know which
    > ones), please tell us about the results.
    >
    > For those which want to install icc for the first time now: the port
    > tells you where to download it. If you don't find it, you haven't read
    > the download-instructions carefully enough. I will not send the icc
    > archive to you, so don't even ask for it.
    >
    >
    > Note to committers: we have a commercial icc license, so we're allowed
    > to distribute icc compiled binaries (but we're far away from being able
    > to build an entire release with icc).
    >
    >

    -- 
               I will be available to get hired in April 2004.
    http://www.Leidinger.net                       Alexander @ Leidinger.net
      GPG fingerprint = C518 BC70 E67F 143F BE91  3365 79E2 9C60 B006 3FE7
    _______________________________________________
    freebsd-current@freebsd.org mailing list
    http://lists.freebsd.org/mailman/listinfo/freebsd-current
    To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org"
    

  • Next message: Alexander Leidinger: "Re: semi HEADS UP: icc support committed"