The 486 has an integrated FPU, it was the 386 that needed an external FPU.
When Intel started making Pentiums, they improved their floating-point
performance so it was as good as (or in some cases better) than equivalent
integer performance.
I think your problem may be caused by several issues:
1) You may be using a Linux that has been optimized to run on Pentiums (I am
quite certain Red Hat is not, but Mandrake is)
2) You may be using a GCC that has the -686 switch turned on and it may be
optimizing for Pentium (although this would probably lead to other
consequences such as some floating point operations failing that are unique
to Pentium)
My suggestion would be to try running a Linux that has been built to run on
generic 386 machines. Redhat is probably a good choice, although there are
probably others I am unaware of. Also, be sure to check what switches are
turned on in GCC
Best Regards,
Vik Sohal
[EMAIL PROTECTED]
> -----Original Message-----
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED]]On Behalf Of Pawan Singh
> Sent: Thursday, June 15, 2000 9:56 AM
> To: [EMAIL PROTECTED]
> Subject: Math emulation on Linux very slow??
>
>
>
> Hi,
>
> We are using Linux as an embedded kernel on a 486 processor without any
> FPU. What we are noticing is that floating point operations are 5-10 times
> slower than the corresponding operation on Windows CE.
>
> Is this due to the fact that very floating point instruction is trapped to
> the kernel? How expensive is the trapping?
>
> Why not write a user level library for doing math emulation and modify gcc
> to generate code to keep prevent these floating point exceptions? For
> example, Microsoft compiler generates functions like fdiv, fxxx, etc...
> instead of generating actual floating point instructions. These functions
> are user level library functions and keep track of the fact a floating
> point exception occurred. If it did, these functions jump into emulation
> code directly.
>
> Is there an easy solution without attempting to modify gcc?
>
> Thanks
> --
> Pawan Singh
> [EMAIL PROTECTED]
> 650-404-0213
>
>
> --
> To unsubscribe from this list, send a message to [EMAIL PROTECTED]
> with the command "unsubscribe linux-embedded" in the message body.
> For more information, see <http://waste.org/mail/linux-embedded>.
--
To unsubscribe from this list, send a message to [EMAIL PROTECTED]
with the command "unsubscribe linux-embedded" in the message body.
For more information, see <http://waste.org/mail/linux-embedded>.