Messages in this thread | | | Date | Wed, 11 Nov 2009 09:03:13 +0100 | From | Pavel Machek <> | Subject | Re: i686 quirk for AMD Geode |
| |
> (...) > > > CMOV/NOPL are rarely used, thus have no reason to cause a massive > > > performance drop, but are frequent enough (at least cmov) for almost > > > > *One* CMOV in the inner loop will make your performance go down 20x. > > yes, just like with emulated FPU or trapped unaligned accesses. It's > just like flying fishes. They exist but they aren't the most common > ones. If people encounter these cases on a specific program, then > they just have to recompile it if it is a problem. At least they > don't rebuild the whole distro. And once again, I've been using > cmpxchg/bswap emulation for years on my i386 without feeling any > need for a rebuild, and CMOV emulation for years now on my mini-itx
And did you set cpu family to 6 for your 386?
That's the part I was objecting most. Yes, you can emulate, but emulation is very bad for performance... so don't lie about cpu family.
(Imagine application that has NOPL in inner loop, for performance reasons. You want to use version _without_ the NOPL on processors that lack it.)
So... I don't like instruction emulation, but can live with it. But don't lie about supported instructions in /proc as original patch did.
Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
| |