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
Crash threading swt2 #363
Comments
Thanks for reporting this. I also get a segmentation fault for your demo case. However, if I change Also, the basic concurrent pywt/pywt/tests/test_concurrent.py Lines 46 to 64 in bf7be1f
However, if I change |
|
Actually, |
That would align with my stacktrace.
|
Can you also specify which python version you are using? (I see the segfault in Python 3.6, but it did not occur when I tried it with 2.7) |
|
Here's the backtrace from cygdb
|
Sorry about the long delay. I looked at this again today and think I have tracked down the source of the segfault. It appears that the use of pywt/pywt/_extensions/c/common.h Lines 38 to 41 in c39a9a2
requires the GIL, but we have used If I switch this header to use the standard C malloc/free instead of the Python ones I no longer experience the segfault. |
closing as fixed by #367 |
I'm trying to run concurrent swt2 transforms in threads, but it's crashing. It works with a ProcessPoolExecutor (which is obviously much slower, since we have to pickle the numpy data and fork, and pywt releases the GIL so threads should scale).
Test Case
Stack Trace
The text was updated successfully, but these errors were encountered: