Closed coldfix closed 5 years ago
Finally some good news on this. It seems that the crash is caused by the garbage collector (bdwgc) and can be solved by upgrading to a newer version. No crashs found with 7.6.8
, I will do a post-release soon. Please reopen if similar issues happen on a cpymad version greater than 1.0.10
.
Continuing from #32:
We now have py35 and py36 builds of cpymad produced by manual compilation using mingw from WinPython3.4Qt5 (for a more detailed build description, see below).
While building the C extensions works fine, I found that the MAD-X background process crashes in a significant number of cases (between 10% and 90% depending on my PC's mood). At first, I thought this is a problem due to the new build process and the incompatibility between the different CRTs (ucrt in python3.5+ on the on hand, msvcr100 in winpy34 on the other side), but then I discovered that this problem seems to occur only on 64bit on win10. So far, I neither encountered problems on win7 64bit (using the exact same binary) nor on win7/10 32bit (using the same build process).
Some references on the CRT topic are given in https://github.com/hibtc/cpymad/issues/32#issuecomment-153695711.
Traceback
While debugging, I found that this happens during startup when invoking
cpymad.libmadx.start()
. Attaching a traceback obtained by running gdb on the followingmx.py
:Traceback:
Build description
First build MAD-X 5.04.00 as a static library (once on 32bit plus once on 64bit):
Then build cpymad. Here assuming py35/64bit: