Re: i386 kernel not included?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





Thomas Dodd wrote:
> But if most pre i686 CPUS (pre PPro/PII/Athlon) run the i386 code
> mix faster than the pentium mix, why not supply the i386 mix.
> I woul thing there are more 486s, P/MMX, K5, K6, and Cyrix CPUs
> still in use than Pentiums (pre MMX).


A test using a simple C source file:

-march=i386 -mcpu=i586  and -march=i586 -mcpu=i586
were the same.

-march=i386 -mcpu=i586  and -march=i386 -mcpu=i686
had a lot of differences. The instruction mix was very different.

-march=i386 -mcpu=i586  and  -march=i386 -mcpu=athlon
Very different to.

-march=i386 -mcpu=i686  was the same as -march=i386 -mcpu=athlon
Most interesting to me,
The mix is different.

example
i686                      athlon
movl -24(%edp), %edx      andl -24(%edp), %eax
andl %edx, %eax


movl %eax, %edx           imull $100, %eax, %edx
movl %edx, %eax
sall $2, %eax
addl %edx, %eax
leal 0(,%eax,4), %edx
addl %edx, %eax
leal 0(,%eax,4), %edx



That's a large difference to me.
1 instruction instead of 7, that allows better usage of
the instruction decoders, and less pressure on the L1
cache, probably L2 as well. Also less register pressure,
the first one leave %edx alone, free for other uses.

This one file doesn't save much, but by the time you do
a full app, it could be a lot.

I need a good example app to test with, to see what
effect this has in a larger app.

	-Thomas



-- 
Psyche-list mailing list
Psyche-list@redhat.com
https://listman.redhat.com/mailman/listinfo/psyche-list

[Index of Archives]     [Fedora General Discussion]     [Red Hat General Discussion]     [Centos]     [Kernel]     [Red Hat Install]     [Red Hat Watch]     [Red Hat Development]     [Red Hat 9]     [Gimp]     [Yosemite News]

  Powered by Linux