[PlanetCCRMA] Fftw3
William M. Quarles
walrus at bellsouth.net
Wed Nov 24 16:23:01 PST 2004
Fernando Lopez-Lezcano wrote:
> On Wed, 2004-11-24 at 15:29, William M. Quarles wrote:
>
>>The program that seems that it would be most dependent on
>>architecture/instruction calls would be Fftw3. It's not optimized for
>>i586 or i686, only i386. AMD K6 and cousins might prefer i586, big boy
>>Athlon would obviously prefer athlon, Intel would prefer i686, and
>>pentium4 architecture for P4s. However, those optimizations have to be
>>specified during the configure stage before compile-time. You can't
>>choose both Intel (SSE) and AMD (3DNow!) optimizations at the same time,
>>can you?
>
>
> Why do you say so?
>>From the Planet CCRMA repository directory tree:
>
> planetccrma/mirror/fedora/linux/planetccrma/1/i386/fftw3-3.0.1-1.rhfc1.ccrma.athlon.rpm
> planetccrma/mirror/fedora/linux/planetccrma/1/i386/fftw3-3.0.1-1.rhfc1.ccrma.i386.rpm
> planetccrma/mirror/fedora/linux/planetccrma/1/i386/fftw3-3.0.1-1.rhfc1.ccrma.i586.rpm
> planetccrma/mirror/fedora/linux/planetccrma/1/i386/fftw3-3.0.1-1.rhfc1.ccrma.i686.rpm
>
> so yes, I'm building those packages with multi architecture
> optimizations.
Are those new? OK, apparently I didn't check up on the facts before
installing. Maybe that's why APT is complaining
Anyway, what about the flags during the configuration stage? As far as
I recall, the program is not making use of SSE or 3DNow! if those aren't
specified.
> An additional comment (this has surfaced in various mailing lists
> several times): on most programs the optimizations may not do much, if
> anything. On modern Intel cpus the advantage of the extra instructions
> is in practice pretty much nil. What does make a difference is the
> instruction ordering and you can optimize that separately from the
> actual mix of instructions used (ie: you can build a binary that has
> instruction ordering optimized for i686 but only uses i386
> instructions). That is how all redhat packages are built (and why it
> does not really make sense to have a "i686" version of them). On athlon
> cpus instruction even ordering is pretty much irrelevant...
I rebuilt Fedora Core 2 Mozilla SRPMS for Fedora Core 1 with the missing
$RPM_OPT_FLAGS replaced and using --target=i686. It starts A LOT faster
than the i386 compilations. However, this particular does not actually
include i686 scheduling since the $RPM_OPT_FLAGS is not used, neither in
the source code nor in the spec file (and many other Red Hat pacakges
are that way as well).
Peace,
William
More information about the PlanetCCRMA
mailing list