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
dddddd has quit [Ping timeout: 246 seconds]
speeder39_ has quit [Quit: Connection closed for inactivity]
<jkbbwr>
Only asking because im trying to track them down, I read their paper on implementing Prolog in Python an was wondering if they had the code available anywhere to go thru.
<simpson>
jkbbwr: http://webyrd.net/scheme-2013/papers/HemannMuKanren2013.pdf is a similar parallel construction. The main insight is that unification and control flow can be teased apart, and each piece is relatively simple in isolation.
<jkbbwr>
Im reading it now and this is mind blowing.
<ronan>
own-tests' test_recompiler takes forever and ever, could we just get rid of it?
<cfbolz>
that's cffi, right?
<cfbolz>
it's a question for arigato then
<mattip>
cfbolz: sad that it so quickly becomes a shouting match
<cfbolz>
yeah :-(
antocuni has joined #pypy
<cfbolz>
mattip: those commits help, but not enough
<cfbolz>
still 2x slower than pypy2
<cfbolz>
(down from 4x slower)
<mattip>
"than pypy2"? aren't the commits _on_ pypy2?
<mattip>
(thanks for looking at it)
<cfbolz>
mattip: yes, but on pypy2 sys.stdout doesn't use the _io module
<cfbolz>
(the commits are on both, actually, I backported the pypy3 changes to pypy2)
<antocuni>
if pypy3 is now 2x slower instead of 4x after you made commits on pypy2, maybe it's because you slowed down pypy2 by 2x :)
<cfbolz>
antocuni: no, sys.stdout is not using _io on pypy2
<antocuni>
sure, I was just joking
<mattip>
maybe you merged default to py3.6 before testing this and I just am not seeing the merge yet
<mattip>
otherwise I don't understand what got faster
<cfbolz>
pypy3 got 2x faster
<cfbolz>
compared to before
<cfbolz>
but we need another factor of 2
<cfbolz>
on the benchmark in the issue
<mattip>
cool
<cfbolz>
(the performance of pypy2 on that benchmark is unchanged. however, you can write an equivalent benchmark that uses the _io module explicitly, that was also slow on pypy2, but is now 2x faster, with 2x more needed)
<mattip>
I wonder how many other x2 speedups are easy changes :(
<cfbolz>
many
<cfbolz>
;-)
<cfbolz>
the hard part isn't the change, it's to find the problem though
antocuni has quit [Ping timeout: 240 seconds]
<cfbolz>
mattip: I think that's why our policy of "we take performance bugs seriously" is good: we find those places that way