Gene Heskett wrote:
On Wednesday 18 July 2007, Chris Jones wrote:
Since requirements for computers are more intense now, building 32-bit
with SSE/SSE2 by default would make sense, especially if a 20%
improvement is noticed in comparison.
Note that not all 32 bit processors have the SSE/SSE2 extensions - This
is why gcc does not enable this by default in 32 bit mode. All 64 bit
processes do so gcc can safely enable it by default, knowing that its
not going to generate code that some processors cannot run.
Chris
My 32 bit Athlon XP-2800 cpu has the SSE extension according to dmidecode.
How would one go about enabling this in the kernel's Makefile?
Thanks.
Don't know about the makefile, but at the command line level, you need
to get some additional flags into the gcc build command -
-msse : This one tells the compiler to allow the use of SSE instructions
in the code. Note that this is only useful if the code is actually
written to use SSE instructions directly. So unless your code actually
does this, it won't make a difference.
-msse2 -msse3 : Same as above, but for the new SSE2 and even newer SSE3
instruction sets.
-mfpmath=sse : This one tells the compiler to use the SSE capabilities
of your chip for mathematical stuff. This options can make a different
to *any* code that uses maths.. Its this that makes the 20% difference
to my 32 bit cuilds. (you have to also include any one of -msse, -msse2
or -msse3 at the same time).
Chris