cfbolz changed the topic of #pypy to: PyPy, the flexible snake (IRC logs: https://quodlibet.duckdns.org/irc/pypy/latest.log.html#irc-end ) | use cffi for calling C | if a pep adds a mere 25-30 [C-API] functions or so, it's a drop in the ocean (cough) - Armin
<Dejan>
Any ETA on when will there be a semi-working 3.8 branch?
<Dejan>
My company moved entirely to 3.8, that is why I wonder that
<cfbolz>
Dejan: we started
<cfbolz>
Working is still a bit away
<mattip>
trying to figure out why the jit cannot make the pure python pickle faster
<mattip>
it seems there is an "optimization" to write values via a frame into a io.BytesIO() stream
<mattip>
turning that off makes the benchmark ~30% faster
<mattip>
but now the FRAME opcode is missing
<mattip>
maybe I can swap out the BytesIO for a BytesBuilder ?
<ebarrett>
hey folks
<cfbolz>
mattip: what's the input data in the test?
<cfbolz>
ebarrett: hey edd!
<ebarrett>
hey cfbolz
<ebarrett>
I hope life is OK given... the world right now!
<ebarrett>
I was hoping I could ask some questions about blackholing
<ebarrett>
What do you do when you exit a trace via a guard failure, and the branch you start interpreting relies on a computation that was optimised out of the trace on account of being dead code in the context of the trace?
<ebarrett>
do you a) not optimise those computations out, or b) stash enough info to perform the computations later?
<cfbolz>
dead code in which sense?
<cfbolz>
we do both, I think
<ebarrett>
is there any info on this somewhere? or can you point me at code?
<ebarrett>
i've followed the reference trail to the trace trees paper, but it doesn't go into enough detail
<cfbolz>
ebarrett: do you know the guards paper by david schneider and me?
* ebarrett
looks it up
<ebarrett>
"The Efficient Handling of Guards in the Design of RPython’s Tracing JIT"
<ebarrett>
I'll give it a gander, thanks
<cfbolz>
yes
panosl[m] has joined #pypy
<cfbolz>
ebarrett: but my counter-question is still "dead code in which sense" ;-)
<ebarrett>
we had a minimal example before xmas -- let me see if i can find it, or if it's lost to the sands of time