<?xml version="1.0" encoding="utf-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Intel Beats Up GCC</title>
	<atom:link href="http://multimedia.cx/eggs/intel-beats-up-gcc/feed/" rel="self" type="application/rss+xml" />
	<link>http://multimedia.cx/eggs/intel-beats-up-gcc/</link>
	<description>Topics On Multimedia Technology and Reverse Engineering</description>
	<lastBuildDate>Tue, 07 Feb 2012 11:54:02 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: ARM compiler shoot-out &#124; Hardwarebug</title>
		<link>http://multimedia.cx/eggs/intel-beats-up-gcc/comment-page-1/#comment-149604</link>
		<dc:creator>ARM compiler shoot-out &#124; Hardwarebug</dc:creator>
		<pubDate>Wed, 05 Aug 2009 00:06:16 +0000</pubDate>
		<guid isPermaLink="false">http://multimedia.cx/eggs/?p=1179#comment-149604</guid>
		<description>[...] See also Mike&#8217;s test of x86 compilers. [...]</description>
		<content:encoded><![CDATA[<p>[...] See also Mike&#8217;s test of x86 compilers. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Carl Eugen Hoyos</title>
		<link>http://multimedia.cx/eggs/intel-beats-up-gcc/comment-page-1/#comment-142547</link>
		<dc:creator>Carl Eugen Hoyos</dc:creator>
		<pubDate>Sat, 07 Mar 2009 01:13:27 +0000</pubDate>
		<guid isPermaLink="false">http://multimedia.cx/eggs/?p=1179#comment-142547</guid>
		<description>Just for the record: Until recently, I used to run icc compiled code (as long as that was possible with FFmpeg) only on AMD cpus and the code was always faster than with gcc.

icc defaults to something like --cpu=pentium3, so unfortunately, this test was not exactly fair, march=native would turn the advantage: Imo, --cpu=core2 would be fair.</description>
		<content:encoded><![CDATA[<p>Just for the record: Until recently, I used to run icc compiled code (as long as that was possible with FFmpeg) only on AMD cpus and the code was always faster than with gcc.</p>
<p>icc defaults to something like &#8211;cpu=pentium3, so unfortunately, this test was not exactly fair, march=native would turn the advantage: Imo, &#8211;cpu=core2 would be fair.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Diego "Flameeyes" Pettenò</title>
		<link>http://multimedia.cx/eggs/intel-beats-up-gcc/comment-page-1/#comment-142389</link>
		<dc:creator>Diego "Flameeyes" Pettenò</dc:creator>
		<pubDate>Wed, 04 Mar 2009 13:00:57 +0000</pubDate>
		<guid isPermaLink="false">http://multimedia.cx/eggs/?p=1179#comment-142389</guid>
		<description>Weeeell when a hardware manufacturer comes to me with a compiler that &quot;magically&quot; runs code faster on his chips, but doesn&#039;t on the ones from a rival, it really sounds like mafia speaking ;)

But I agree that GCC needs improvement, especially in the heuristics. I&#039;m afraid I&#039;m not geek enough to know about compilers to the point of hacking at them though :(</description>
		<content:encoded><![CDATA[<p>Weeeell when a hardware manufacturer comes to me with a compiler that &#8220;magically&#8221; runs code faster on his chips, but doesn&#8217;t on the ones from a rival, it really sounds like mafia speaking ;)</p>
<p>But I agree that GCC needs improvement, especially in the heuristics. I&#8217;m afraid I&#8217;m not geek enough to know about compilers to the point of hacking at them though :(</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Multimedia Mike</title>
		<link>http://multimedia.cx/eggs/intel-beats-up-gcc/comment-page-1/#comment-142388</link>
		<dc:creator>Multimedia Mike</dc:creator>
		<pubDate>Wed, 04 Mar 2009 01:24:25 +0000</pubDate>
		<guid isPermaLink="false">http://multimedia.cx/eggs/?p=1179#comment-142388</guid>
		<description>@Flameeyes: From the discussions I&#039;ve read, it all depends on whose side of the story you believe. Apparently, Intel said it was to protect against running magical, possibly volatile code on non-blessed chips.

So there, you anti-Intel zealot. :-)</description>
		<content:encoded><![CDATA[<p>@Flameeyes: From the discussions I&#8217;ve read, it all depends on whose side of the story you believe. Apparently, Intel said it was to protect against running magical, possibly volatile code on non-blessed chips.</p>
<p>So there, you anti-Intel zealot. :-)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Diego "Flameeyes" Pettenò</title>
		<link>http://multimedia.cx/eggs/intel-beats-up-gcc/comment-page-1/#comment-142387</link>
		<dc:creator>Diego "Flameeyes" Pettenò</dc:creator>
		<pubDate>Wed, 04 Mar 2009 00:46:39 +0000</pubDate>
		<guid isPermaLink="false">http://multimedia.cx/eggs/?p=1179#comment-142387</guid>
		<description>I don&#039;t have the reference at hand but I remember at least older Intel C Compiler versions used to have a killswitch for AMD.

Basically it produced much bigger code, branching depending on the runtime features found on the CPU (SSE, MMX, and so on), checked with cpuid. When cpuid reported a vendor different from GenuineIntel, it branched to &quot;no extension available&quot;.

Fun isn&#039;t it?</description>
		<content:encoded><![CDATA[<p>I don&#8217;t have the reference at hand but I remember at least older Intel C Compiler versions used to have a killswitch for AMD.</p>
<p>Basically it produced much bigger code, branching depending on the runtime features found on the CPU (SSE, MMX, and so on), checked with cpuid. When cpuid reported a vendor different from GenuineIntel, it branched to &#8220;no extension available&#8221;.</p>
<p>Fun isn&#8217;t it?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bobby</title>
		<link>http://multimedia.cx/eggs/intel-beats-up-gcc/comment-page-1/#comment-142386</link>
		<dc:creator>Bobby</dc:creator>
		<pubDate>Tue, 03 Mar 2009 21:05:04 +0000</pubDate>
		<guid isPermaLink="false">http://multimedia.cx/eggs/?p=1179#comment-142386</guid>
		<description>And just for comparison, with the ffmpeg I had installed, which included all the hand-written asm, it only takes 6m13.722s</description>
		<content:encoded><![CDATA[<p>And just for comparison, with the ffmpeg I had installed, which included all the hand-written asm, it only takes 6m13.722s</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bobby</title>
		<link>http://multimedia.cx/eggs/intel-beats-up-gcc/comment-page-1/#comment-142385</link>
		<dc:creator>Bobby</dc:creator>
		<pubDate>Tue, 03 Mar 2009 20:55:00 +0000</pubDate>
		<guid isPermaLink="false">http://multimedia.cx/eggs/?p=1179#comment-142385</guid>
		<description>With an Athlon64 X2 3800:

Configure options common to all configurations: --disable-amd3dnow --disable-amd3dnowext --disable-mmx --disable-mmx2 --disable-sse --disable-ssse3 --disable-yasm

Input file was divx5 video (652x356), mp3 audio, 95 minutes

ICC 10.1 20080801:
- options: --cc=icc --extra-cflags=-O3
- best time: 7m57.379s

GCC 4.3.3:
- options: -O3 -march=athlon64
- best time: 8m17.021s

LLVM-GCC 2.4 (2.5 came out recently):
- options: -O3 -march=athlon64
- best time: 8m30.107s</description>
		<content:encoded><![CDATA[<p>With an Athlon64 X2 3800:</p>
<p>Configure options common to all configurations: &#8211;disable-amd3dnow &#8211;disable-amd3dnowext &#8211;disable-mmx &#8211;disable-mmx2 &#8211;disable-sse &#8211;disable-ssse3 &#8211;disable-yasm</p>
<p>Input file was divx5 video (652&#215;356), mp3 audio, 95 minutes</p>
<p>ICC 10.1 20080801:<br />
- options: &#8211;cc=icc &#8211;extra-cflags=-O3<br />
- best time: 7m57.379s</p>
<p>GCC 4.3.3:<br />
- options: -O3 -march=athlon64<br />
- best time: 8m17.021s</p>
<p>LLVM-GCC 2.4 (2.5 came out recently):<br />
- options: -O3 -march=athlon64<br />
- best time: 8m30.107s</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alex</title>
		<link>http://multimedia.cx/eggs/intel-beats-up-gcc/comment-page-1/#comment-142383</link>
		<dc:creator>Alex</dc:creator>
		<pubDate>Tue, 03 Mar 2009 18:44:52 +0000</pubDate>
		<guid isPermaLink="false">http://multimedia.cx/eggs/?p=1179#comment-142383</guid>
		<description>@Mike:

ffmpeg llvm benchmarks: http://laurovenancio.wordpress.com/2007/08/07/llvm-perf-tests/</description>
		<content:encoded><![CDATA[<p>@Mike:</p>
<p>ffmpeg llvm benchmarks: <a href="http://laurovenancio.wordpress.com/2007/08/07/llvm-perf-tests/" rel="nofollow">http://laurovenancio.wordpress.com/2007/08/07/llvm-perf-tests/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: astrange</title>
		<link>http://multimedia.cx/eggs/intel-beats-up-gcc/comment-page-1/#comment-142382</link>
		<dc:creator>astrange</dc:creator>
		<pubDate>Tue, 03 Mar 2009 17:51:30 +0000</pubDate>
		<guid isPermaLink="false">http://multimedia.cx/eggs/?p=1179#comment-142382</guid>
		<description>ffmpeg doesn&#039;t compile under llvm-gcc with inline asm on, but should work with it off.

gcc should be able to do a little autovectorization with appropriate -march -mtune, but not as many movqs.

And can you try gcc svn?</description>
		<content:encoded><![CDATA[<p>ffmpeg doesn&#8217;t compile under llvm-gcc with inline asm on, but should work with it off.</p>
<p>gcc should be able to do a little autovectorization with appropriate -march -mtune, but not as many movqs.</p>
<p>And can you try gcc svn?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bobby</title>
		<link>http://multimedia.cx/eggs/intel-beats-up-gcc/comment-page-1/#comment-142381</link>
		<dc:creator>Bobby</dc:creator>
		<pubDate>Tue, 03 Mar 2009 17:49:44 +0000</pubDate>
		<guid isPermaLink="false">http://multimedia.cx/eggs/?p=1179#comment-142381</guid>
		<description>@Multimedia Mike: I don&#039;t know.  That&#039;s something else I&#039;m curious to see.  I&#039;ll probably give it a try in the next couple days if somebody doesn&#039;t beat me to it.</description>
		<content:encoded><![CDATA[<p>@Multimedia Mike: I don&#8217;t know.  That&#8217;s something else I&#8217;m curious to see.  I&#8217;ll probably give it a try in the next couple days if somebody doesn&#8217;t beat me to it.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

