This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: More Athlon Questions
- To: "M. Edward Borasky" <znmeb at aracnet dot com>, <gcc at gcc dot gnu dot org>
- Subject: Re: More Athlon Questions
- From: Jean Francois Martinez <jfm2 at club-internet dot fr>
- Date: Sat, 19 May 2001 22:51:19 +0200
- References: <HBEHIIBBKKNOBLMPKCBBMEKMDFAA.znmeb@aracnet.com>
- Reply-To: jfm2 at club-internet dot fr
> 3. A few weeks ago, I saw an Athlon - GCC project somewhere on the web, but
> it seemed to have withered away over a year ago for lack of volunteers. Do
> you know if this is the case? I unfortunately don't have much time to do
> anything other than testing, but so far, of all the software I've
> downloaded, only ATLAS seems to recognize the fact that I have an Athlon
> and offer
> me Athlon-based optimizations.
>
Some considerations:
1) The Athlon optimizations are far less mature (ie provide a smaller bonus)
than Intel's, specially in gcc 2.95
2) Optimizing for specific (Intel) processor produces noticeable but not
earth shaking improvements. Dofference is greater with gcc 2.96 but this
compiler is cursed and its name must not be mentionned
3) AMD knows its processors will have to crunch code who has been
optimized for Intels. Therefore it tries to make processors relatively
insensitive to compiler tricks or who have a "response curve" similar to
the contemporary Intel flagship. These thoughts were inspired by benchmarks
I made on K6.
4) Programs spend a lot of time in libraries. You have to recompile the
main ones, specially the glibc if you want to get more than insignificant
improvements
5) In Intel processors I have noticed you get most of the benefits by using
-mcpu= (optimizes for processor, uses only 386 instruction). Use of -march=
(same but compiler can use any instruction suported by processor) gives
only a very small speed bonus specially if you are not using the seven times
cursed gcc 2.96 so unless you know code contains athlon specific assembler
you could choose -mcpu= since this will allow use of your code on other boxes.
> 4. The "/usr/src/redhat/RPMS" directory contains an "athlon" sub-directory
> for binary RPMs. Do you know if this is "reserved for future use", or is
> there actually a way I can get the existing RPM and associated mechanisms
> to make me an Athlon-specific binary RPM?
rpm -ba --target=k7 specfile
JFM