On Tuesday, November 1, 2016 at 1:55:00 PM UTC-4, Fedor Sumkin wrote: > > Hi all, > > Faced with a quite sad sage bug which arises with interval based > assumptions and full_simplify()/simplify() in called in parallel. > > Here is a gist : > https://gist.github.com/sumkincpp/a5472ce6fcec4d05ebac605829f197a4 > > I simulated 3 vehaviours with upper code: > 0. without @parallel -> EVERYTHING IS FINE > 1. Commented section behaviour -> EVERYTHING IS FINE > 2. uncommented section behaviour : > $ sage sage-parallel-broken-assumptions.sage > params = [-max(A, B, C)] > thread_suspend failed > Aborted > > > Any ideas how to resolve this? > > Thanks, > Fedor >
Actually, it might be worth making a bug report out of this: "parallel" usually does use "fork" by default, which should be safe, except that "expect" based interfaces don't work properly (they are based on inter process communication, and the other process of course doesn't get forked). The maxima_lib interface that should be used by simplify_full should be fine, because it's a library interface, which does get its state forked together with the "fork" call. So if you're experiencing problems with "parallel" it might indicate one of two things: 1) you're hitting some behaviour that is using a "maxima" interface rather than "maxima_lib". That's probably a bug. 2) the maxima_lib interface pretends to be an "expect" interface in some respects. It may well be that the "fork" implementation in parallel resets all "expect" interfaces, because that would at least save the parent from strange behaviour. It may be that maxima_lib still suffers that reset as well. That could be considered a bug. -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at https://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.