Closed dcmvdbekerom closed 3 months ago
Thanks a lot, that is an interesting feature! I have come across the need for something like this in a slightly different context; I had the requirement "the result size must be even", not so much "the result size must not break an alignment of x", but de facto there isn't a real difference between these two.
I wonder if this can be implemented a little bit more efficiently, by doing
Line 405: static POCKETFFT_NOINLINE size_t good_size_cmplx(size_t n, size_t required_factor=1)
Line 410: for (size_t f11=required_factor; f11<bestfac; f11*=11)
(plus some small adjustments in lines 407 and 409 to make sure we don't get into endless loops.)
Would this also work for you?
Thanks for the quick reply, yes this solution would work for me too!
Great! Can you please give the enhanced_good_size
branch a try?
Ah, sorry! I think this implementation is still buggy. Hopefully I'll have something better soon!
Now it should hopefully be correct.
It works! Thanks again for the very quick response 😄!
Merged!
Hi there,
Thanks for this very useful FFT library! For my application I need to find an FFT length that is both fast and SIMD aligned. I managed to do this by making the following modifications to the header file:
If speed would be too much impacted by the modulo operation, one could also only check powers of 2, i.e.:
If you think this could be useful to others as well, feel free to add this to the header file.