What did you do this week?
I have been working towards a minimum viable product for the scipy.fft submodule. This involved writing a wrapper around pypocketfft to satisfy the numpy.fft interface, as well as integrating pypocketfft into SciPy's build system. I have opened a draft PR in which all of numpy's fft tests are passing and all but one of the fftpack tests are passing.
What is coming up next?
The draft PR needs to be polished to the point where it is review ready:
- Some small precision issues need to be resolved
- Documentation needs to be written
- fftpack had various optimisations for real input which need to be reimplemented with pocketfft
I can also begin work on the backend system:
- mechanism for installing a backend
- configuration API to give users more control over each backend
Did you get stuck anywhere?
I initially had a lot of trouble getting the build system to work. Any attempt to add or modify scipy submodules were causing build failures in completely unrelated parts of SciPy. I was only able to resolve this after reinstalling my entire python environment. After solving that, I had no major blockers.