cfbolz changed the topic of #pypy to: #pypy PyPy, the flexible snake https://pypy.org | IRC logs: https://quodlibet.duckdns.org/irc/pypy/latest.log.html#irc-end and https://libera.irclog.whitequark.org/pypy | Matti: I made a bit of progress, the tests now only segfault towards the end
jcea has quit [Ping timeout: 260 seconds]
derpydoo has quit [Quit: derpydoo]
lritter has joined #pypy
lritter has quit [Quit: Leaving]
dmalcolm_ has joined #pypy
dmalcolm has quit [Ping timeout: 264 seconds]
antocuni_ is now known as antocuni
otisolsen70 has joined #pypy
epony has quit [Ping timeout: 252 seconds]
epony has joined #pypy
Dejan has joined #pypy
<cfbolz> yay 🎉
<cfbolz> randomly generating traces to feed into the optimizer just found its first bug 😊
<Dejan> will 3.11 make PyPy faster too?
<cfbolz> no
<cfbolz> I mean
<cfbolz> Dejan: your question is under-specified, what do you mean exactly?
<Dejan> 3.11 has several optimisations - i wonder how much will they affect PyPy
<cfbolz> Dejan: but pypy is not CPython, so the fact that CPython 3.11 has optimizations does not immediately affect us
<Dejan> that is why i asked the question - is there a chance some of them will actually do well on PyPy too?
<cfbolz> if we port the same approaches?
<Dejan> yea
<cfbolz> ok
<cfbolz> that's unclear, basically
<cfbolz> those are interpreter optimizations
<cfbolz> so for pypy they would affect the pre-jit speed
<Dejan> 👍
jcea has joined #pypy
epony has quit [Quit: QUIT]
<cfbolz> lots of bugs
<cfbolz> moooooore bugs
derpydoo has joined #pypy
<mattip> :(
<cfbolz> nothing totally serious so far, but still
<cfbolz> why did we never optimize random traces before?
derpydoo has quit [Quit: derpydoo]
Vishal36 has joined #pypy
Vishal36 has quit [Client Quit]
<fijal> cfbolz: I think the main reason was that there is a bunch of assumptions about the traces that are implicit
<fijal> or one of the reasons
<cfbolz> fijal: no, I am not finding this kind of bug
<cfbolz> instead real actual logic bugs in the (int) parts of optimizeopt
<fijal> ok
<fijal> I don't know then
<fijal> maybe a much better answer :-)
<cfbolz> :-)
<cfbolz> fijal: I'm only generating int ops for now, maybe that focus helps
<cfbolz> I really want a test case minimizer now though
epony has joined #pypy
<Alex_Gaynor> cfbolz: I wonder if it'd make sense to hook this up to libFuzzer or something like that -- it has good tools for minimization.
<cfbolz> Alex_Gaynor: heh, did I accidentally send out the FuzzMan signal or something? ;-)
<Alex_Gaynor> hehe, I don't do much pypy stuff these days, but I'm still here!
<cfbolz> Alex_Gaynor: I think I need to finish a bunch of things first, then we could try
<cfbolz> some intermediate support missing, basically
<Alex_Gaynor> you'd need a way of encoding/decoding ops from bytes.
<cfbolz> Alex_Gaynor: we have a pretty-printer and a parser
<Alex_Gaynor> that's a string format, yeah?
<Alex_Gaynor> as in, human readable
<cfbolz> yes
<cfbolz> ok, too hard to get the syntax right for a fuzzer maybe
<Alex_Gaynor> I'm sure libFuzzer would figure it out eventually, might be less efficient than a binary format, but libfuzzer is like magic.
<cfbolz> heh
<cfbolz> I mean we do have a random trace generator that takes a source of randomness (=arbitrary bytes) and turns them into operations :-P
derpydoo has joined #pypy
otisolsen70 has quit [Quit: Leaving]