In PR #25, pyfftw_sdp module was revised. It now stores rfft/irfft object so that it can re-use them later. So, I tried to check a few things:
- How many unique
next_fast_n for n in range(2, 2**20 + 1)? Answer: 2623
- How long does it take to perform RFFT planning (with
FFTW_MEASURE) for all 2623 input sizes? Answer: 2-3 hours on my machine (macOS M1, 8GB RAM)
- How much is the size of the exported wisdom? Answer: 2.6Mb
- How long does it take to load and import wisdom? Answer: <1 sec
- How much does it take to create all RFFT objects that correspond to those 2623 input sizes? This takes ~3 sec (in total) after importing the wisdom
- How much memory does "2623 stored rfft objects" consume? Answer: TBD
Currently, I am trying to understand the caveats of different memory-profiling approaches. I tried pympler. It shows <1 MB.