On May 8, 2008, at 8:30 AM, Michael Abshoff wrote: > Robert Bradshaw wrote: >> On May 7, 2008, at 10:46 PM, Stefan Behnel wrote: >> > > Hi, > >>> Yes, that's where we took the suppression file from that we use for >>> lxml. >>> >>> http://codespeak.net/svn/lxml/trunk/valgrind-python.supp >>> >> >> > I am actually pretty paranoid about using suppression files and I do > prefer recompiling python "--without-pymalloc". But that is likely > to be > something most people will not do since they do not build their own > python interpreter from sources. > >> I bet turning off string interning, etc. would help clean up lots of >> the noise too. >> > Hmm, I have seen a lot of noise with Cython 0.9.6.14 even when I set > > generate_cleanup_code = 3 > > In Sage about 100 doctests segfault at exit [out of 900] with that > setting on, nearly all of them involved matrix[2].pyx somehow IIRC. > Something for dev1 maybe? It is my understanding that this isn't the > default of Cython, but more which classes import other classes and in > which order.
Cleanup is inherently dangerous... Suppose one has two modules a and b, with classes A and B respectively, both of which have non-empty __del__ or __dealloc__ methods. Then if a holds an instance of B and b holds an instance of A (think parent-element) then it is impossible to cleanup a or b after the other module has been deallocated. > Anyhow: How do I turn off "string interning"? It's in Compiler/Options.py. This may some segfaults go away too, but slows things down. - Robert _______________________________________________ Cython-dev mailing list [email protected] http://codespeak.net/mailman/listinfo/cython-dev
