Re: RFC: [2.6 patch] better i386 CPU selection

Alan Cox
2003-09-07T18:12:07Z

On Sul, 2003-09-07 at 18:43, Jamie Lokier wrote:
> 2. The CPU types are not a total order. Say I want a kernel
> that supports Athlons and a Centaur for my cluster. What
> CPU setting should I use? What CPU setting will give my the best
> performing kernel - and is that the same as the one for smallest
> kernel?

You'd use two kernels. There is no sane other answer to that specific
case 8)

> But I don't want to compile in support for every x86,
> because space is tight, and I want it to run as fast as it
> can given that it could run on either of the two chips.

The code size differential is noise except for FPU emulation, and thats
in part sloppy because we could have __fpuseg and eject it at boot if
not needed ;)

386 kernels are slow because of user space handling and lack of bswap
486 kernels basically work on anything just fine

> I'm not sure if an Athlon is "lower" than a PII or not.... Which do I
> option do I pick, to run on either of those without including
> redundant stuff for older CPUs?

Right now its ordered

386 - 486 - 586 - 586+TSC - 686 - PPro - PII - PIII - PIV

Geode is a branch off 586+TSC and supports 686+ too
Athlon branches off from PIII if I remember rightly
Winchip branches off from 586 and supports all later x86 too
ELAN is its own weird world
Xmeta comes off 686 somewhere depending how you handle PGE