On 2023-03-27, Ethan Fenn wrote:
My understanding is that on any reasonably modern Intel/AMD machines,
you just have to make sure that the Flush To Zero (FTZ) and Denormals
Are Zero (DAZ) hardware flags are set when your DSP code runs and
there will be no penalty.
Only it's really difficult to set those flags from the userspace. Also,
handling the exceptions in case they would be the best way to go about,
is doubly so.
The predominant IEEE floating point standard is nowhere near the kind of
hardware-software integration we'd like to have today. It leaves too
much into the air, quite irrespective of bit width.
Oh, and do take a look at what they've done in narrower formats in the
GPGPU, TPU and like formats, aimed at AI work. They don't do flags or
exceptions at all. Obviously they don't cater to DSP either, but they've
as well simplified the architecture down from denormals, DnD's,
infinitudes, asynchronous exceptions, and the like.
--
Sampo Syreeni, aka decoy - de...@iki.fi, https://urldefense.proofpoint.com/v2/url?u=http-3A__decoy.iki.fi_front&d=DwIBAg&c=009klHSCxuh5AI1vNQzSO0KGjl4nbi2Q0M1QLJX9BeE&r=TRvFbpof3kTa2q5hdjI2hccynPix7hNL2n0I6DmlDy0&m=3MqWDS98rhP7uh0t75eYI8dSU6kn3aKNxELjWI-9sQ6vDTBwR2cn6FdkBVM-oL4N&s=Y2umvEwLC5S6rsu9WyOnCQ2Qfe6_a3VOTa6IWADxqDo&e=
+358-40-3751464, 025E D175 ABE5 027C 9494 EEB0 E090 8BA9 0509 85C2