Dan Cross wrote in
<CAEoi9W5SepgWyepx2r7YJLA5AtAGgQdnFMgMEBXmxQHurcrSeA(a)mail.gmail.com>:
|On Tue, Jul 9, 2024 at 1:35 PM Paul Winalski <paul.winalski(a)gmail.com> \
|wrote:
|> I don't know of any OSes that use floating point.
|
|I've seen it. Not for numeric computations, primarily, but for fast
|data transfer a la `memcpy` using SIMD instructions in the FPU. In
Yes, .. not SIMD (what i know), but using the floating-point stack
on x86 one could get dramatic performance boosts for bzero(), and
for the copies etc. (Ie, by fildq loading for example 64 bytes
into the stack, then fistpq saving it to the destination. On
Athlon this was very fast even on non-aligned pointers.) And
i think the MMX extension registers effectively "were" the FP
stack.
|the BSD kernels circa 4.3, load average calculation used a modicum of
|FP (multiplication as double's). Oh, and I've seen some amount of FP
|hardware used for computing checksums.
|
|Of course, the OS must save and restore the state of the FPU on a
|context switch, but that's rather obviously not what you meant; I only
|mention it for completeness.
..
I am an integer fan. The hardware front brought so many
floating-point improvements that today i think they are "as fast"
as integer on x86, multiplication and division, etc.
But i hated sox ("the Swiss Army knife of audio manipulation") for
using floating point internally, when i come in with 16-bit audio
data; i keep the all-integer tremor library for Ogg Vorbis audio,
for some future day; noone used it, i still do not understand why.
--steffen
|
|Der Kragenbaer, The moon bear,
|der holt sich munter he cheerfully and one by one
|einen nach dem anderen runter wa.ks himself off
|(By Robert Gernhardt)