annotate constant-q-cpp/src/ext/kissfft/CHANGELOG @ 372:af71cbdab621 tip

Update bqvec code
author Chris Cannam
date Tue, 19 Nov 2019 10:13:32 +0000
parents 5d0a2ebb4d17
children
rev   line source
Chris@366 1 1.3.0 2012-07-18
Chris@366 2 removed non-standard malloc.h from kiss_fft.h
Chris@366 3
Chris@366 4 moved -lm to end of link line
Chris@366 5
Chris@366 6 checked various return values
Chris@366 7
Chris@366 8 converted python Numeric code to NumPy
Chris@366 9
Chris@366 10 fixed test of int32_t on 64 bit OS
Chris@366 11
Chris@366 12 added padding in a couple of places to allow SIMD alignment of structs
Chris@366 13
Chris@366 14 1.2.9 2010-05-27
Chris@366 15 threadsafe ( including OpenMP )
Chris@366 16
Chris@366 17 first edition of kissfft.hh the C++ template fft engine
Chris@366 18
Chris@366 19 1.2.8
Chris@366 20 Changed memory.h to string.h -- apparently more standard
Chris@366 21
Chris@366 22 Added openmp extensions. This can have fairly linear speedups for larger FFT sizes.
Chris@366 23
Chris@366 24 1.2.7
Chris@366 25 Shrank the real-fft memory footprint. Thanks to Galen Seitz.
Chris@366 26
Chris@366 27 1.2.6 (Nov 14, 2006) The "thanks to GenArts" release.
Chris@366 28 Added multi-dimensional real-optimized FFT, see tools/kiss_fftndr
Chris@366 29 Thanks go to GenArts, Inc. for sponsoring the development.
Chris@366 30
Chris@366 31 1.2.5 (June 27, 2006) The "release for no good reason" release.
Chris@366 32 Changed some harmless code to make some compilers' warnings go away.
Chris@366 33 Added some more digits to pi -- why not.
Chris@366 34 Added kiss_fft_next_fast_size() function to help people decide how much to pad.
Chris@366 35 Changed multidimensional test from 8 dimensions to only 3 to avoid testing
Chris@366 36 problems with fixed point (sorry Buckaroo Banzai).
Chris@366 37
Chris@366 38 1.2.4 (Oct 27, 2005) The "oops, inverse fixed point real fft was borked" release.
Chris@366 39 Fixed scaling bug for inverse fixed point real fft -- also fixed test code that should've been failing.
Chris@366 40 Thanks to Jean-Marc Valin for bug report.
Chris@366 41
Chris@366 42 Use sys/types.h for more portable types than short,int,long => int16_t,int32_t,int64_t
Chris@366 43 If your system does not have these, you may need to define them -- but at least it breaks in a
Chris@366 44 loud and easily fixable way -- unlike silently using the wrong size type.
Chris@366 45
Chris@366 46 Hopefully tools/psdpng.c is fixed -- thanks to Steve Kellog for pointing out the weirdness.
Chris@366 47
Chris@366 48 1.2.3 (June 25, 2005) The "you want to use WHAT as a sample" release.
Chris@366 49 Added ability to use 32 bit fixed point samples -- requires a 64 bit intermediate result, a la 'long long'
Chris@366 50
Chris@366 51 Added ability to do 4 FFTs in parallel by using SSE SIMD instructions. This is accomplished by
Chris@366 52 using the __m128 (vector of 4 floats) as kiss_fft_scalar. Define USE_SIMD to use this.
Chris@366 53
Chris@366 54 I know, I know ... this is drifting a bit from the "kiss" principle, but the speed advantages
Chris@366 55 make it worth it for some. Also recent gcc makes it SOO easy to use vectors of 4 floats like a POD type.
Chris@366 56
Chris@366 57 1.2.2 (May 6, 2005) The Matthew release
Chris@366 58 Replaced fixed point division with multiply&shift. Thanks to Jean-Marc Valin for
Chris@366 59 discussions regarding. Considerable speedup for fixed-point.
Chris@366 60
Chris@366 61 Corrected overflow protection in real fft routines when using fixed point.
Chris@366 62 Finder's Credit goes to Robert Oschler of robodance for pointing me at the bug.
Chris@366 63 This also led to the CHECK_OVERFLOW_OP macro.
Chris@366 64
Chris@366 65 1.2.1 (April 4, 2004)
Chris@366 66 compiles cleanly with just about every -W warning flag under the sun
Chris@366 67
Chris@366 68 reorganized kiss_fft_state so it could be read-only/const. This may be useful for embedded systems
Chris@366 69 that are willing to predeclare twiddle factors, factorization.
Chris@366 70
Chris@366 71 Fixed C_MUL,S_MUL on 16-bit platforms.
Chris@366 72
Chris@366 73 tmpbuf will only be allocated if input & output buffers are same
Chris@366 74 scratchbuf will only be allocated for ffts that are not multiples of 2,3,5
Chris@366 75
Chris@366 76 NOTE: The tmpbuf,scratchbuf changes may require synchronization code for multi-threaded apps.
Chris@366 77
Chris@366 78
Chris@366 79 1.2 (Feb 23, 2004)
Chris@366 80 interface change -- cfg object is forward declaration of struct instead of void*
Chris@366 81 This maintains type saftey and lets the compiler warn/error about stupid mistakes.
Chris@366 82 (prompted by suggestion from Erik de Castro Lopo)
Chris@366 83
Chris@366 84 small speed improvements
Chris@366 85
Chris@366 86 added psdpng.c -- sample utility that will create png spectrum "waterfalls" from an input file
Chris@366 87 ( not terribly useful yet)
Chris@366 88
Chris@366 89 1.1.1 (Feb 1, 2004 )
Chris@366 90 minor bug fix -- only affects odd rank, in-place, multi-dimensional FFTs
Chris@366 91
Chris@366 92 1.1 : (Jan 30,2004)
Chris@366 93 split sample_code/ into test/ and tools/
Chris@366 94
Chris@366 95 Removed 2-D fft and added N-D fft (arbitrary)
Chris@366 96
Chris@366 97 modified fftutil.c to allow multi-d FFTs
Chris@366 98
Chris@366 99 Modified core fft routine to allow an input stride via kiss_fft_stride()
Chris@366 100 (eased support of multi-D ffts)
Chris@366 101
Chris@366 102 Added fast convolution filtering (FIR filtering using overlap-scrap method, with tail scrap)
Chris@366 103
Chris@366 104 Add kfc.[ch]: the KISS FFT Cache. It takes care of allocs for you ( suggested by Oscar Lesta ).
Chris@366 105
Chris@366 106 1.0.1 (Dec 15, 2003)
Chris@366 107 fixed bug that occurred when nfft==1. Thanks to Steven Johnson.
Chris@366 108
Chris@366 109 1.0 : (Dec 14, 2003)
Chris@366 110 changed kiss_fft function from using a single buffer, to two buffers.
Chris@366 111 If the same buffer pointer is supplied for both in and out, kiss will
Chris@366 112 manage the buffer copies.
Chris@366 113
Chris@366 114 added kiss_fft2d and kiss_fftr as separate source files (declarations in kiss_fft.h )
Chris@366 115
Chris@366 116 0.4 :(Nov 4,2003) optimized for radix 2,3,4,5
Chris@366 117
Chris@366 118 0.3 :(Oct 28, 2003) woops, version 2 didn't actually factor out any radices other than 2.
Chris@366 119 Thanks to Steven Johnson for finding this one.
Chris@366 120
Chris@366 121 0.2 :(Oct 27, 2003) added mixed radix, only radix 2,4 optimized versions
Chris@366 122
Chris@366 123 0.1 :(May 19 2003) initial release, radix 2 only