mreineck / pocketfft

Fork of https://gitlab.mpcdf.mpg.de/mtr/pocketfft to simplify external contributions
BSD 3-Clause "New" or "Revised" License
64 stars 31 forks source link

Is there a pthreads pool available that works on Windows? #2

Open carlkl opened 2 years ago

carlkl commented 2 years ago

see https://github.com/mreineck/pocketfft/issues/1#issuecomment-977757283 and https://github.com/mreineck/pocketfft/issues/1#issuecomment-977839096 Related msys2 scipy issue: https://github.com/msys2/MINGW-packages/issues/10164

Is pocketfft with thread support functional on windows? And if not, what has to be done to enable this functionality?

mreineck commented 2 years ago

I have not heard of problems with pocketfft on Windows so far, and my own CI tests for the successor package (https://github.com/litebird/ducc) seem to work fine with multiple threads on Windows. However those tests are using MSVC and do not require MinGW.

If someone could help me set up these tests for MinGW using Github Actions, I'm happy to do further analysis!

carlkl commented 2 years ago

@mreineck, this is a nice reference project for our question. If will check, if this works with msys2 g++ as well.

mreineck commented 2 years ago

Very good! The multi-threading part has been moved out of the FFT code in this project, but it is essentially hte same as in pocketfft (just with some more functionality put on top). I'm sure that if we can get one to work, we'll manage with the other as well.

carlkl commented 2 years ago

@mreineck, are there some simple test cases available as well?

carlkl commented 2 years ago

ups, found it in the repo...

carlkl commented 2 years ago

ducc0 binary wheels (Python-3.9 64bit) are available here for some time: https://my.hidrive.com/share/7gun0qvp2v

peterbell10 commented 2 years ago

It might help if you could grab some stack traces of where it hangs. However, If the bug really is in the compiler and/or system libraries then I'm not sure what we could do.

carlkl commented 2 years ago

see https://github.com/msys2/MINGW-packages/issues/10164#issuecomment-979823333