RuntimeError: Undefined plan with threads. This is a bug
dangom opened this issue · 1 comments
Describe the bug
Calling latest rapidtide with the following call:
rapidtide --CVR --regressor co2.txt --offsettime -25 data.nii.gz cvr/data &
I keep getting this message printed over and over (seems to not cause any issues, but doesn't inspire confidence)
FFTW_object = pyfftw.FFTW(input_array, output_array, axes, direction,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
RuntimeError: Undefined plan with nthreads. This is a bug
RuntimeError: Undefined plan with nthreads. This is a bug
Exception ignored in: 'pyfftw.pyfftw._fftw_plan_with_nthreads_null'
To Reproduce
Steps to reproduce the behavior:
Clone repo and run rapidtide.
Expected behavior
No RuntimeError messages.
Desktop (please complete the following information):
- OS: Centos 7
Yeah, that's a longstanding (and often reported) bug in the current version of the Intel binary of pyfftw. It's been unaddressed for almost two years now - the project seems to be unmaintained, and I despair of it ever getting fixed. It's harmless - pyfftw works fine - but as you say, it does not inspire confidence. Pyfftw is also not compatible with python 3.12, which is irritating.
As of rapidtide v2.8.8 (released this afternoon!) pyfftw is now an optional dependency. You can remove it from your environment (or never install it) and rapidtide will be perfectly happy. I didn't even notice a speed hit (at least on ARM), so it seems like it no longer provides much benefit.
It's actually always been optional, but was in the requirements list so it got installed by default. If you remove it from your environment your current installation will probably be fine.