> On Sat, Nov 08, 2003 at 10:58:03AM +0100, Eduard Bloch wrote: > > #include <hallo.h> > > > > * Nikita V. Youshchenko [Sat, Nov 08 2003, 12:39:58PM]: > > > Optimization is a serious issue too. Unlike most user space > > > software, using 386 kernel on modern PC will cause serious > > > performance loose. Especially if you consider mmx/sse/... and SMP > > > issues. Note also that not all drivers are compatible with SMP, > > > etc. > > > > Except of SMP, how exactly does optimisation of the KERNEL CODE help > > you? Your filesystem driver may become 2-3% faster, but the disk > > won't speed up at all, haha. > > Don't you have to compile the kernel for a CPU with MMX support to be > able to use MMX in userspace? I understood something like that from the > mplayer docs recently, but I may have misunderstood...
In theory, for proper "context-switch-safe" support for MMX, SSE and all other "modern x86" capabilities, corresponding code should present in context-switch routins of the kernel. That code definitly exists in kernel compiled for 686 or k7. I don't know if it is compiled it when compiling 386 kernel. Anyone interested can look in the sources :). 2.6 kernels seem to have more CPU selection related options, including CPU selection and "compile support for other CPUs" switch. I believe that it is generally beter to use kernel that corresponds to the CPU. This will make system more consistent.