On Wed, Feb 20, 2019 at 09:39:16AM -0600, Bruce Dubbs via blfs-dev wrote:
> On 2/20/19 6:49 AM, Pierre Labastie via blfs-dev wrote:
> > On 20/02/2019 09:32, Ken Moffat via blfs-dev wrote:
> > > On Wed, Feb 20, 2019 at 08:05:46AM +0000, Ken Moffat via blfs-dev wrote:
> > > > 
> > > > A few nits about the Command Explanations:
> > > > 
> > > > For --enable-float we mention RawTherapee, and then say
> > > > 
> > > > "These versions are not usable by packages in this book which use
> > > > libfftw3 so if you need both you will need to build fftw twice."
> > > > 
> > > > I think we should add Pulseaudio to the float option, and mention it
> > > > first because it is in the book ?  Or maybe just mention "e.g.
> > > > pulse" since we are now building that version so it will be there
> > > > for RawTherappe and anything else ?
> > > > 
> > > > And drop that last sentence because we are now building it three
> > > > times.
> > > > 
> > > > But does anyone know what packages use the long double version ?
> > > > All I can find is questions on Stack Overflow etc where people are
> > > > writing their own C programs.
> > > > 
> > > > Hmm, since single-precision is float (as compared to double which is
> > > > not floating-point), and produces the libfftw3f* libs, make also
> > > > change 'Now build single-precision' to 'Now build floating-point' ?
> > > > 
> > > 
> > > Alternative suggestion: change "single precision" to "floating
> > > point" and then just drop the explanation of --enable-float because
> > > it should now be obvious, and maybe drop the additional explamation
> > > of what uses the threaded double library.
> > > 
> > > ĸen
> > > 
> > 
> > Hi,
> > 
> > Not sure what to do for the problem at hand. All I know is that double *is*
> > floating point...
> 
> > Short version: the 3 flavours of fftw are all floating point.
> > Long version:
> > C has had a long history. At the beginning, the only floating point format 
> > was
> > 32 bit and named "float". The computers ability at the time did not allow
> > more, although the accuracy is only about 7 digits, which is not enough for
> > reliable calculations. Soon after came the 64 bit floating point format, 
> > which
> > got named "double" in C (a short name for "double precision" (the fortran
> > name), not "double float", as one could imagine). This allowed for more
> > reliable number crunching, at the expanse of a computing time multiplied by 
> > 4.
> > Then came the 80 bit format used in Intel math coprocessors (no special name
> > in C), then 128 bit, more recently, named "long double" in C. Real time Fast
> > Fourier Transform (FFT) still use the 32 bit format (float), because it's
> > faster, but normal number crunching uses 64 bit, and 128 bit, or even MPFR
> > when higher precision is needed.
> 
> But the default libraries are double precision.  Some modern CPUs have
> 512-bit registers that can be used for extreme precision or can take 8
> doubles for parallel execution.
> 
> I prefer to maintain the single precision terminology as teh term 'float'
> can be overloaded to mean any floating point precision.
> 
>   -- bruce
> 
Thanks to you both.  How about, as a first step, extending the Note
to:

We build fftw three times to provide libraries in different
numerical provisions: the default double precision floating point,
the older 32-bit version named float which sacrifices precision for
speed, and the long double which offers increased precision at the
cost of slower execution.

?

ĸen
-- 
The beauty of reading a page of de Selby is that it leads one
inescapably to the conclusion that one is not, of all nincompoops,
the greates.            -- du Garbandier
-- 
http://lists.linuxfromscratch.org/listinfo/blfs-dev
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to