<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META NAME="Generator" CONTENT="MS Exchange Server version 6.5.7226.0">
<TITLE>RS: [Beowulf] Sempron compile optimization</TITLE>
</HEAD>
<BODY>
<!-- Converted from text/plain format -->
<P><FONT SIZE=2>I'm running a Fedora, classicaly compiled for "i686", on the aforesaid Semperon 3000+ (actually a 1800MHz clock).<BR>
<BR>
>Sorry, to be more explicit, I think that MOST people probably don't want<BR>
>to use -m features, whether or not they work. The compiler will usually<BR>
>"do the right thing" without them, unless you are cross-compiling. I<BR>
>think they are there mostly for cross-compilers.<BR>
<BR>
So far, a quick series summation gave me:<BR>
<BR>
* "vanilla" gcc (no switches): 19.1 s<BR>
<BR>
* add -march=athlon: 9.9 s<BR>
<BR>
* other FPU options (-sse, -3dnow) have no further effect, probably incorporated into athlon.<BR>
<BR>
* replace with -march=x86-64: 8.3 s<BR>
<BR>
* add -m64: cc1 complains, doesn't compile. Doc says it should work (yah).<BR>
<BR>
No exactly rocket science, but a 130% speedup that doesn't cost anything. Disclaimer: probably depends quite a lot on your code, as usual.<BR>
<BR>
The bad news is: you also get to recompile all your dynamically linked libraries, or you don't win anything. Happened to me with libgmp.<BR>
<BR>
Best,<BR>
Alan Ward<BR>
<BR>
<BR>
<BR>
</FONT>
</P>
</BODY>
</HTML>