Quote:
Originally Posted by Trumpcard
icc is available in gentoo portage, so you can pull it down if you like...
|
Yeah, but since the number of ebuilds that actually respect the use icc option is extremely small, that doesn't really help.
Quote:
Why default to using icc though for portage builds rather than gcc ?
GCC is a commited opensource compiler, switching over 100% to icc , regardless of better optimizations, would be insane...
|
It's all about the performance, man. I think the insanity would be in _not_ switching if you can realize a 30+% performance gain. Code size could be a benefit for some, too. If the Intel compiler can take code (like eqemu's own distance calculations, for example) and automagically optimize it to haul major ass by going superscalar or hyperthreading or whatever the hell else the processor supports, then I sure as heck would want to make sure that the binaries I download were compiled with it! All evidence supports that vector distance calculations, like the kind that we make en masse, are faster when compiled by icc to the tune of more than double the speed. I've seen cases where certain optimization flags were completely prohibited by benchmarkers, because the performance gains were so dramatic that one can only assume that the compiler is being _too_ smart (i.e. 10x gains in whetstone). Additionally, the Intel compiler is the _only_ 100% ANSI compiler available. So, if I'm going to see gains of 100% in floating-point apps and 30% gains elsewhere, then I hardly think that switching default compilers is _insane_. Nor do I think that it is inappropriate for me to look to a distribution like gentoo, which touts its ability to build systems from the ground up supporting user-defined compilation metrics/options to ease the transition.
Quote:
You are bound to eventually run into licensing issues with Intel as icc isnt GPL.. icc is free for personal/noncommerical use, but relying on it would be dangerous should intel decide to yank the way they handle it or discontinue evaluation versions... Then you have a distro that requires a purchased compiler.
|
I don't think so. For one thing, a license change wouldn't affect the status of software built with the compiler, only the compiler itself. So, it isn't like my system would just fall apart. Besides, intermingling gcc apps from that point on would not be any worse than adding icc apps at this point, so I don't follow your argument (unless you're suggesting that one not use icc at all). I can say that I certainly would never ever choose to spend 18 hours building a system from scratch just to get a 1-3% performance improvement (what you can expect over binary packages, assuming you know what you're doing). On the other hand, if I could rebuild using icc and get a 30+ percent improvement across the board, then the prospect would suddenly look much more attractive.
Yeah, I've seen the details. To save others the hassle of checking it out - it is free for noncommercial use, <$100 for students and ~$305 for all others. That puts it roughly on par with the cost of other popular compilers. Certainly not what I would consider highway robbery.
Quote:
You can put icc in your USE flags and it will try to use icc for any package that supports it....
|
Yeah, but that is limited to only a very small number of emerge ports ATM.
The bottom line is that icc seems to do a much better job than gcc ATM. Enough so, in fact, that I'm going to wait to start the 18 hour odyssey of building a gentoo system until it properly supports using icc. Of course, if it turns out that Mandrake starts packaging icc built binaries (a definite possibility, since it has always optimized builds for Pentium chips) before gentoo gets its stuff together, then I'll probably just go that route.