catid/leopard

Investigate Frobenius Additive FFT

catid opened this issue · 3 comments

catid commented

I believe this can be a drop-in replacement for the FFT that is currently being used:
https://arxiv.org/pdf/1802.03932.pdf

More background:
http://www.texmacs.org/joris/ffft/ffft.pdf

catid commented

~5x faster for 16-bit field, ~3x faster for 8-bit field hypothetically:

affft.test_fft(8)
FFT performance for k=8 : 2304 adds, 2304 muladds
IFFT performance for k=8 : 2304 adds, 2304 muladds
Test successful! Output = Input
affft.test_affft2(8)
FAFFT2 performance for k=8 : 656 adds, 656 muladds
IFAFFT2 performance for k=8 : 176 adds, 656 muladds
Test successful! Output = Input

affft.test_affft2(16)
FAFFT2 performance for k=16 : 198656 adds, 198656 muladds
IFAFFT2 performance for k=16 : 71680 adds, 198656 muladds
Test successful! Output = Input
affft.test_fft(16)
FFT performance for k=16 : 1114112 adds, 1114112 muladds
IFFT performance for k=16 : 1114112 adds, 1114112 muladds
Test successful! Output = Input

Is the code for this somewhere I can test? :p

catid commented

Maybe one day :)