To test this release unpack and run "make test" you will need libfftw3
(fftw3-devel if you use packages) installed to test, but not to use, typically
test results should look like:
----------------------------- 8< ----------------------------------
baseline 24 in 32 test, 1024 samples took 40.3 cycles/sample
Optimised:
GDitherNone, 1024 samples, 24 in 32bit took 48.7 cycles/sample
GDitherRect, 1024 samples, 24 in 32bit took 77.3 cycles/sample
GDitherTri, 1024 samples, 24 in 32bit took 84.7 cycles/sample
GDitherShaped, 1024 samples, 24 in 32bit took 106.2 cycles/sample
GDitherNone, 1024 samples, 16bit took 53.7 cycles/sample
GDitherRect, 1024 samples, 16bit took 81.8 cycles/sample
GDitherTri, 1024 samples, 16bit took 94.8 cycles/sample
GDitherShaped, 1024 samples, 16bit took 117.5 cycles/sample
Unoptimised:
GDitherNone, 1024 samples, 20 in 32bit took 55.2 cycles/sample
GDitherRect, 1024 samples, 20 in 32bit took 82.4 cycles/sample
GDitherTri, 1024 samples, 20 in 32bit took 93.1 cycles/sample
GDitherShaped, 1024 samples, 20 in 32bit took 120.8 cycles/sample
GDitherNone, 1024 samples, 24 in float took 32.6 cycles/sample
GDitherRect, 1024 samples, 24 in float took 65.3 cycles/sample
GDitherTri, 1024 samples, 24 in float took 76.2 cycles/sample
GDitherShaped, 1024 samples, 24 in float took 96.1 cycles/sample
GDitherTri, 1024 samples, 24 in float, double input took 85.1 cycles/sample
RMS SNR for no dithering = -149dB
RMS SNR for rectangular dithering = -142dB
RMS SNR for triangular dithering = -144dB
RMS SNR for noise-shaped dithering = -131dB
ok
no dithering mean harmonic resonace = 40.4dB
no dithering peak harmonic resonance = 47.9dB
rectangular dithering mean harmonic resonace = 1.5dB
rectangular dithering peak harmonic resonance = -2.7dB
triangular dithering mean harmonic resonace = -0.2dB
triangular dithering peak harmonic resonance = -2.6dB
noise-shaped dithering mean harmonic resonace = 0.8dB
noise-shaped dithering peak harmonic resonance = -8.1dB
ok
random amp/frequecy range = [0.50,0.52]
16bit distribution range = [0.82,1.21]
ok
checking interleaving
ok