You are not logged in.

#1 2008-11-17 17:09:55

Jacek Poplawski
Member
From: Poland
Registered: 2006-01-10
Posts: 736
Website

Intel C Compiler

Can we use Intel C Compiler in Arch?

http://www.timelordz.com/blog/?p=134

Of course not to replace gcc but for fun!

Offline

#2 2008-11-17 17:22:16

AndyRTR
Developer
From: Magdeburg/Germany
Registered: 2005-10-07
Posts: 1,642

Re: Intel C Compiler

You can use it for private use but you/we are not allowed to distribute binaries built with it.

Offline

#3 2008-11-17 17:52:35

Stefan Husmann
Member
From: Germany
Registered: 2007-08-07
Posts: 1,391

Re: Intel C Compiler

BTW it is in AUR.

Offline

#4 2008-11-17 18:26:24

Dieter@be
Forum Fellow
From: Belgium
Registered: 2006-11-05
Posts: 2,001
Website

Re: Intel C Compiler

It's a cool compiler, at work we recompiled our mysql packages with the Intel compiler and noticed a performance gain.  The license is a bit restrictive though. (compared to gcc) so I agree with Andy/Stefan: get it from aur, update your makepkg.conf and have fun wink

Last edited by Dieter@be (2008-11-17 18:27:00)


< Daenyth> and he works prolifically
4 8 15 16 23 42

Offline

#5 2008-11-18 21:13:02

Tido
Member
Registered: 2007-06-21
Posts: 65

Re: Intel C Compiler

Dieter@be wrote:

It's a cool compiler, at work we recompiled our mysql packages with the Intel compiler and noticed a performance gain.  The license is a bit restrictive though. (compared to gcc) so I agree with Andy/Stefan: get it from aur, update your makepkg.conf and have fun wink

Happen to know how to change which compiler you use in makepkg.conf?

Offline

#6 2008-11-18 22:40:24

jacko
Member
Registered: 2007-11-23
Posts: 840

Re: Intel C Compiler

How many problems does one expect to run into to get programs to compile on ICC compared to gcc? Sounds like a great investment of time.

Offline

#7 2008-11-18 22:45:16

moljac024
Member
From: Serbia
Registered: 2008-01-29
Posts: 2,676

Re: Intel C Compiler

Dieter@be wrote:

It's a cool compiler, at work we recompiled our mysql packages with the Intel compiler and noticed a performance gain.  The license is a bit restrictive though. (compared to gcc) so I agree with Andy/Stefan: get it from aur, update your makepkg.conf and have fun wink

you ricers!!! tongue


The day Microsoft makes a product that doesn't suck, is the day they make a vacuum cleaner.
--------------------------------------------------------------------------------------------------------------
But if they tell you that I've lost my mind, maybe it's not gone just a little hard to find...

Offline

#8 2008-11-18 22:46:32

jacko
Member
Registered: 2007-11-23
Posts: 840

Re: Intel C Compiler

Tido wrote:
Dieter@be wrote:

It's a cool compiler, at work we recompiled our mysql packages with the Intel compiler and noticed a performance gain.  The license is a bit restrictive though. (compared to gcc) so I agree with Andy/Stefan: get it from aur, update your makepkg.conf and have fun wink

Happen to know how to change which compiler you use in makepkg.conf?

To actually use ICC just put CC=icc and CXX=icpc on the command line before make or configure. http://macles.blogspot.com/2008/09/inte … -atom.html

Offline

#9 2008-11-18 23:42:14

Gringo
Member
From: The Netherlands
Registered: 2008-07-31
Posts: 37

Re: Intel C Compiler

I used it also for fun to try out the Intel Atom specific optimization flags. ICC installed really well from AUR, just read through the PKGBUILD and edit where neccessairy. You'll have to register on Intel's website to obtain a free license, but it's not a lot of work. Have fun! smile

Offline

#10 2008-11-19 01:16:56

Tido
Member
Registered: 2007-06-21
Posts: 65

Re: Intel C Compiler

jacko wrote:
Tido wrote:
Dieter@be wrote:

It's a cool compiler, at work we recompiled our mysql packages with the Intel compiler and noticed a performance gain.  The license is a bit restrictive though. (compared to gcc) so I agree with Andy/Stefan: get it from aur, update your makepkg.conf and have fun wink

Happen to know how to change which compiler you use in makepkg.conf?

To actually use ICC just put CC=icc and CXX=icpc on the command line before make or configure. http://macles.blogspot.com/2008/09/inte … -atom.html

Sadly that doesn't work for makepkg.

Offline

#11 2008-11-19 01:39:58

Ranguvar
Member
Registered: 2008-08-12
Posts: 2,575

Re: Intel C Compiler

Just change the environment variable CC. In a profile script or whatnot if you want it all the time. Look around in /etc to see if something is already setting it, and change that in that case.

Offline

#12 2008-11-19 03:37:09

toofishes
Developer
From: Chicago, IL
Registered: 2006-06-06
Posts: 602
Website

Re: Intel C Compiler

Pacman and libalpm compile just fine out of the box with ICC, for what its worth. If a program is written in good C (meaning not using GNU-specific extensions) and is already portable across operating systems, it shouldn't be that big of a deal to get it to compile with ICC.

Offline

#13 2008-11-19 03:44:10

Ranguvar
Member
Registered: 2008-08-12
Posts: 2,575

Re: Intel C Compiler

Be careful, though. Some apps fall flat on their face with ICC performance. x264 is one example - ICC does not preserve stack alignment, so x264 winds up with massive slowdowns. I would recommend not going all-out with everything ICC-compiled all at once, and instead slowly compiling groups of apps and testing.

Offline

#14 2008-11-19 13:01:35

pyther
Member
Registered: 2008-01-21
Posts: 1,395
Website

Re: Intel C Compiler

Is there any good way to benchmark applications to find out if the icc performance is better than gcc?


Website - Blog - arch-home
Arch User since March 2005

Offline

#15 2008-11-20 00:33:51

pyther
Member
Registered: 2008-01-21
Posts: 1,395
Website

Re: Intel C Compiler

Does anyone know how to pass options to icc when using makepkg? I've tried export ICCCFG="-xL -ipo -O3" with no luck.

Ignore me; you simply just have to pass them in the CFLAGS, when I tried this initially I didn't realize -ipo wasn't supported on my processor.

Last edited by pyther (2008-11-20 01:26:08)


Website - Blog - arch-home
Arch User since March 2005

Offline

#16 2008-11-20 01:30:42

Ranguvar
Member
Registered: 2008-08-12
Posts: 2,575

Re: Intel C Compiler

1.) Use the time command? 'time (mygcccapp -options)', and then 'time (myiccapp -options)'.

Offline

#17 2009-01-26 12:59:31

Wintershade
Member
From: Croatia
Registered: 2008-02-18
Posts: 175
Website

Re: Intel C Compiler

A quick question, it seems I'm really stupid today.
Where do I set the compiler environment variables? I tried in PKGBUILD of a some package and in the /etc/makepkg.conf, but to no avail - the packages still compile with GCC.

Any help would be appreciated.


Only the best is good enough.

Offline

#18 2009-03-01 15:07:22

rubend
Member
Registered: 2008-04-20
Posts: 47

Offline

#19 2009-03-01 17:23:09

Wintershade
Member
From: Croatia
Registered: 2008-02-18
Posts: 175
Website

Re: Intel C Compiler

Hmm. This is interesting, although I've personally managed to compile the vanilla kernel 2.6.28 with the ICC, as well as the latest Arch and openSUSE kernels. This kernel version seems based on a bit old sources, no?

Just my $0.02...


Only the best is good enough.

Offline

#20 2009-03-01 17:27:58

andre.ramaciotti
Member
From: Brazil
Registered: 2007-04-06
Posts: 649

Re: Intel C Compiler

How does the kernel compiled by ICC compares with the GCC one?


(lambda ())

Offline

#21 2009-03-01 17:39:00

Wintershade
Member
From: Croatia
Registered: 2008-02-18
Posts: 175
Website

Re: Intel C Compiler

Everything becomes magically faster big_smile

Kidding. There is a slight performance increase, particularly at the boot time, module and daemon loading and unloading, perhaps some more heavy-duty applications get loaded a bit faster. I haven't done any benchmarking, though, and I don't intend to.


Only the best is good enough.

Offline

#22 2009-03-01 23:19:51

jacko
Member
Registered: 2007-11-23
Posts: 840

Re: Intel C Compiler

I haven't done any benchmarking, though, and I don't intend to.

Perceived speed increase > actual optimization. Oh come on, what's so wrong with a bootchart. Is it really that disappointing?

Offline

#23 2009-03-01 23:46:54

Wintershade
Member
From: Croatia
Registered: 2008-02-18
Posts: 175
Website

Re: Intel C Compiler

It's not that, it's just the fact that it doesn't really bother me that much. My experiment with ICC was more like doing it for fun, than for some actual gain in anything other than personal satisfaction in the ability to say "I did it". Once I get bored with compiling with ICC, I will stop doing it. And it probably won't make me frustrated about the "poor performance of gcc-compiled apps compared to icc-compared apps".

As far as the boot time performance, well, you know that udev uevent loading time? Well, with icc-compiled kernel I have loading time of 1,3-1,4 seconds on average, while with the stock kernel it's about 2-2,4 seconds. And like I said, it's not about disappointment, but about not really caring anymore.
(Just for the reference, my CPU is Intel Dothan @ 1.6 GHz)


Only the best is good enough.

Offline

#24 2009-03-04 15:11:38

broch
Banned
From: L.A. California
Registered: 2006-11-13
Posts: 975

Re: Intel C Compiler

I compared icc and gcc kernels (2.6.28.7).
boot time measured with bootchart:
gcc was 1 sec faster than icc (16sec vs 17sec to kde) and I did not see any difference in overall system responsiveness. In fact it felt as disk needs a little bit more time to respond, when booted to icc kernel.
I used some optimization flags taken from for icc man pages

I edited kernel Makefile to force icc
the above flags may be not optimal for kernel building with icc (not much info about icc kernel compilation available)
it may be that icc has no effect on boot time
it may be that kernel needs some patching to take full advantage of icc
This has nothing to do with icc compiled apps being faster that gcc counterpart of course. Ideally would be to compare icc system vs gcc system. I bet that someone will do this in the future.

Offline

#25 2009-03-04 15:17:52

Wintershade
Member
From: Croatia
Registered: 2008-02-18
Posts: 175
Website

Re: Intel C Compiler

Most of the kernel code is written is assembly language, IIRC. Thus, there may be no real performance gain over gcc.
Try compiling some data-mincing application written in C/C++. For example, LAME encoder.


Only the best is good enough.

Offline

Board footer

Powered by FluxBB