-
Notifications
You must be signed in to change notification settings - Fork 61
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
BUG: Weird interaction with other modules #42
Comments
Okay looks like it's not a threading problem -- doing this with the built-in examples works fine:
But if I add a
So something about the pylsl and scipy.fft (and other modules) seems not to work. I've tried this on latest |
... and it looks like it works okay with If it matters, this is all Python 3.9 on Ubuntu 20.10 x86_64. |
What Linux distro are you on? I only have Ubuntu 20.04 in easy reach. It would help narrow down the problem tremendously if you could please try the following.
We're hoping the next version of liblsl will have a different distribution process. See sccn/liblsl#110
Sorry what are you referring to here? Did you test something installed from conda and it didn't have the bug? |
I 1)
And everything works! And when I replace
And then I verified that the 1.14.0 manylinux2010 library has the same MD5 ( |
Thank you so much! This was tremendously helpful. |
Indeed I just did |
This bit of code is adapted from two pylsl examples and just starts one thread to send samples and receives them in the main thread, works on Linux (Ubuntu 20.10, pip) as it correctly starts printing a bunch of random samples:
However, if I move the
import scipy.fft
to before thepylsl
import, things break. The stream is never found and it just hangs on theresolve_stream
step. I narrowed thefrom scipy import fft
issue down to it being due to an import ofscipy.fft._pocketfft.pypocketfft
, which is a pybind11-compiled module. (I can also experience it when other modules are imported in that same spot in the script, so I don't think it's specific to SciPy, though.)This is on Linux, where I noticed there is a known issue that multiple threads are not supported. Is this what is meant by "not supported" in that it might work in some situations but not others depending on the import order? If so, is it expected that the conda-forge version will not have this problem, or is it some fundamental limitation? Also I'm not sure if this is related to #6 / #5 or not.
The above example is a minimized version of how we unit test and build docs for MNE-Realtime, hence my interest in it being fixed if at all possible.
The text was updated successfully, but these errors were encountered: