Mercurial > hg > sv-dependency-builds
annotate src/fftw-3.3.5/TODO @ 127:7867fa7e1b6b
Current fftw source
author | Chris Cannam <cannam@all-day-breakfast.com> |
---|---|
date | Tue, 18 Oct 2016 13:40:26 +0100 |
parents | |
children |
rev | line source |
---|---|
cannam@127 | 1 TODO before FFTW-$2\pi$: |
cannam@127 | 2 |
cannam@127 | 3 * figure out how to autodetect NEON at runtime |
cannam@127 | 4 |
cannam@127 | 5 * figure out the arm cycle counter business |
cannam@127 | 6 |
cannam@127 | 7 * Wisdom: make it clear that it is specific to the exact fftw version |
cannam@127 | 8 and configuration. Report error codes when reading wisdom. Maybe |
cannam@127 | 9 have multiple system wisdom files, one per version? |
cannam@127 | 10 |
cannam@127 | 11 * DCT/DST codelets? which kinds? |
cannam@127 | 12 |
cannam@127 | 13 * investigate the addition-chain trig computation |
cannam@127 | 14 |
cannam@127 | 15 * I can't believe that there isn't a closed form for the omega |
cannam@127 | 16 array in Rader. |
cannam@127 | 17 |
cannam@127 | 18 * convolution problem type(s) |
cannam@127 | 19 |
cannam@127 | 20 * Explore the idea of having n < 0 in tensors, possibly to mean |
cannam@127 | 21 inverse DFT. |
cannam@127 | 22 |
cannam@127 | 23 * better estimator: possibly, let "other" cost be coef * n, where |
cannam@127 | 24 coef is a per-solver constant determined via some big numerical |
cannam@127 | 25 optimization/fit. |
cannam@127 | 26 |
cannam@127 | 27 * vector radix, multidimensional codelets |
cannam@127 | 28 |
cannam@127 | 29 * it may be a good idea to unify all those little loops that do |
cannam@127 | 30 copying, (X[i], X[n-i]) <- (X[i] + X[n-i], X[i] - X[n-i]), |
cannam@127 | 31 and multiplication of vectors by twiddle factors. |
cannam@127 | 32 |
cannam@127 | 33 * Pruned FFTs (basically, a vecloop that skips zeros). |
cannam@127 | 34 |
cannam@127 | 35 * Try FFTPACK-style back-and-forth (Stockham) FFT. (We tried this a |
cannam@127 | 36 few years ago and it was slower, but perhaps matters have changed.) |
cannam@127 | 37 |
cannam@127 | 38 * Generate assembly directly for more processors, or maybe fork gcc. =) |
cannam@127 | 39 |
cannam@127 | 40 * ensure that threaded solvers generate (block_size % 4 == 0) |
cannam@127 | 41 to allow SIMD to be used. |
cannam@127 | 42 |
cannam@127 | 43 * memoize triggen. |