Re: perl DBD buidl problems
On Wed, May 26, 2004 at 03:15:46PM +0200, Florian Klaempfl wrote:
> Corin Langosch wrote:
> >by the way: does it hurt to tune the kernel makefile with
> >options like "-O3 -mmmx -msse -msse2" etc...? why isnt this
> >the default, doesn't it speed up the kernel a lot?
32bit number crunching code on Opteron and P4 also benefits from
> x86-64 uses sse/sse2 for parameter passing and float/double arithmetics
> by default, so these switches are obsolete. However, I guess there is
> very little floating point arithmetics in the kernel and prefetch
> optimization isn't done.
There is _no_ hardware floating point in Linux. Linus strictly enforces
that rule to avoid having to use the soft-float code to support kernel-space.
Speaking of gcc flags, I have a program (tree-puzzle, one of many
bioinformatics programs that reconstruct the tree of evolution from dna
sequences) that runs > 15% faster in 32bit mode, compiled with
-march=athlon-mp (among other flags). In my pure64 chroot, -march=athlon-mp
doesn't do anything. According to the comments in the .s after compiling
with -fverbose-asm, it's targetting -march=athlon-4.
Compiling with -march=athlon-4 in 32bit mode is slow, too. athlon-4 vs.
athlon-mp arch also makes a 20% difference in covSEARCH (another program to
do similar things, but with different algorithms).
> 3dnow is deprecated,
because it's not IEEE floating point. It doesn't handle NaN and bad things
> mmx almost useless.
MMX has its uses, like in Linux's software RAID checksumming. String
searching can also use MMX. Not to mention graphics. But for general
purpose compiler-generated code, I don't think gcc knows how to do anything
useful with it.
#define X(x,y) x##y
Peter Cordes ; e-mail: X(peter@cor , des.ca)
"The gods confound the man who first found out how to distinguish the hours!
Confound him, too, who in this place set up a sundial, to cut and hack
my day so wretchedly into small pieces!" -- Plautus, 200 BC