[L2Ork-dev] Double Precision project

katja katjavetter at gmail.com
Tue May 8 14:47:57 EDT 2018


On Tue, May 8, 2018 at 5:50 PM, Jonathan Wilkes <jon.w.wilkes at gmail.com>
wrote:

> Hi list,
>
> We've merged one patch from Pranay's GSoC double precision project,
> and I'll be merging another one soon:
>
> https://git.purrdata.net/pranay_36/purr-data/commit/
> d0d6b54deb1b803c67d85bd5d123d3da98faf495
>
> I'd like to raise a few questions before we get too deep into the project:
>
> 1. We're using a macro PD_FLOAT_PRECISION to make it possible to set
> t_float precision at build time. This is the same macro katja used in
> pd double, but I noticed Pd Vanilla changed this to PD_FLOATSIZE. Does
> it matter? Related, should we go ahead and use the same macro as Pd
> Vanilla here?
>

Pd vanilla has taken a few things from the pd double project but not
literally. See commit:

https://github.com/pure-data/pure-data/commit/68814591c121db8c613cef5d48d854db0c864d7c#diff-5b73ceaccdf7f5af4160c6c1f23ce5cb

Not sure if more precision-related changes were made since then. For
compatibility it is best to match pd vanilla wherever possible. Pd double
is only a badly outdated proof of concept after all.


>
> 2. I'm not sure I understand the comment from the old code:
>
> /* a test for NANs and denormals.  Should only be necessary on i386. */
>

That comment may date from the time when ppc and i386 were the major
targets for pd.


>
> How does x86_64 instruction set change things?
>
> Also, what does ARM do here?
>

Current target platforms for pd (including ARM) are IEEE 747 compliant, so
it's best to flush explicitly unless you know how to trick the compiler
into generating fast math instructions for this. In my experience (a few
years ago) gcc flag "-ffast-math" alone didn't do it. Maybe the code must
be eligible for autovectorization before the compiler will even consider
fast math instructions because they're done on the SIMD registers. Just a
guess.


> -Jonathan
> _______________________________________________
> L2Ork-dev mailing list
> L2Ork-dev at disis.music.vt.edu
> https://disis.music.vt.edu/listinfo/l2ork-dev


Katja
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://disis.music.vt.edu/pipermail/l2ork-dev/attachments/20180508/58610121/attachment.html>


More information about the L2Ork-dev mailing list