On Sun, Feb 21, 2010 at 11:35:11PM +0000, Dave Korn wrote: > On 21/02/2010 22:42, Erik Trulsson wrote: > > > Yes, it does if the user is using binaries compiled by somebody else, > > and that somebody else did not explicitly specify any CPU-flags. > > > > I believe that is the situation when installing most > > Linux-distributions for example. > > No, surely not. The linux distributions use configure options when they > package their compilers to choose the default with-cpu and with-arch options, > and those are quite deliberately chosen according to the binary standards of > the distro. It is hardly a case of "somebody else did not explicitly specify" > cpu flags; they in fact explicitly specified them according to the system > requirements for the distro. If your distro says it doesn't support i386, > this is *why*!
Are you sure of that? Really sure? Some Linux distributions almost certainly do as you describe, but all of them? I doubt it. > > > Considering that most code will not run noticably faster just because > > you optimize it for the newest CPU, > > Considering nobody is suggesting that, it is an irrelevant red herring. > We're talking about optimising for "any CPU built in the past five years" vs. > "any cpu built in the past twentyfive years"; not switching on some option > that will break code on any but the very latest models. There certainly have been x86 CPUs built in the past five years that do not support SSE, let alone SSE2. Besides, five years is not a very long time at all. Not in this context anyway. > > You're also wrong about how much difference switching on SSE makes to real > applications. Any application that isn't I/O bound but does a lot of > in-memory processing will run noticeably better, anything that uses loops or > stdlib string or memory copy/move functions, this is not some tiny minor tweak > we're looking at. I remain sceptical. -- <Insert your favourite quote here.> Erik Trulsson ertr1...@student.uu.se