cfbolz changed the topic of #pypy to: PyPy, the flexible snake (IRC logs: https://botbot.me/freenode/pypy/ ) | use cffi for calling C | the secret reason for us trying to get PyPy users: to test the JIT well enough that we're somewhat confident about it
Garen has quit [Read error: Connection reset by peer]
Garen has joined #pypy
dddddd has quit [Remote host closed the connection]
altendky has quit [Quit: Connection closed for inactivity]
adamholmberg has joined #pypy
adamholmberg has quit [Ping timeout: 264 seconds]
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
altendky has joined #pypy
adamholmberg has joined #pypy
adamholmberg has quit [Ping timeout: 256 seconds]
jacob22__ has quit [Ping timeout: 264 seconds]
jacob22__ has joined #pypy
adamholmberg has joined #pypy
adamholmberg has quit [Ping timeout: 276 seconds]
jamesaxl has quit [Quit: WeeChat 2.1]
stevenja_ has joined #pypy
stevenja_ has quit [Ping timeout: 260 seconds]
asmeurer_ has joined #pypy
lritter_ has joined #pypy
inad922 has joined #pypy
altendky has quit [Quit: Connection closed for inactivity]
_whitelogger has joined #pypy
asmeurer_ has quit [Quit: asmeurer_]
Khayman has joined #pypy
TheAdversary has quit [Ping timeout: 240 seconds]
TheAdversary has joined #pypy
Hasimir has quit [Ping timeout: 240 seconds]
Khayman is now known as Hasimir
inhahe__ has quit []
inhahe__ has joined #pypy
_whitelogger has joined #pypy
dddddd has joined #pypy
_whitelogger has joined #pypy
TheAdversary has quit [Read error: Connection reset by peer]
Hasimir has quit [Read error: Connection reset by peer]
TheAdversary has joined #pypy
Hasimir has joined #pypy
inad922 has quit [Ping timeout: 265 seconds]
jsza has quit [Quit: Connection closed for inactivity]
asmeurer_ has joined #pypy
asmeurer_ has quit [Ping timeout: 264 seconds]
asmeurer has joined #pypy
asmeurer has quit [Client Quit]
jsza has joined #pypy
altendky has joined #pypy
jamesaxl has joined #pypy
demonimin has quit [Ping timeout: 264 seconds]
dddddd has quit [Remote host closed the connection]
realitix has joined #pypy
realitix has quit [Client Quit]
nunatak has joined #pypy
altendky has quit [Quit: Connection closed for inactivity]
fryguybob has quit [Quit: leaving]
fryguybob has joined #pypy
asmeurer has joined #pypy
asmeurer has quit [Ping timeout: 255 seconds]
tbodt has joined #pypy
Garen has quit [Read error: Connection reset by peer]
<tsutsumi> Hi, just out of curiosity: what's the reason behind the expensive cost of cpyext? It feels like pypy not being able to fully take advantage of optimizations like cython limit where it can be used
<tsutsumi> or rather, forcing one to choose one or the other. Is there a way to theoretically improve that communication cost?
Garen has joined #pypy
<mdash> tsutsumi: cpyext has to simulate cpython internals
<mdash> tsutsumi: pypy has different internals, since it's designed for speed and cpython isn't
<mdash> tsutsumi: cython is only needed for optimization because cpython is slow
<tsutsumi> yeah, I see that in many cases cython optimizations won't be necessary
<tsutsumi> but libraries that have cython optimizations built in for hot paths will be slower in pypy
<mdash> possibly
<mdash> which ones do you have in mind?
<LarstiQ> tsutsumi: doesn't cython have some pypy support?
dddddd has joined #pypy
<tsutsumi> which means I have to omit anything that utilizes cython heavily, for example https://vibora.io/
<LarstiQ> tsutsumi: but the general concern is: optimizing for cpython can deoptimize for pypy
<LarstiQ> not just cython
<tsutsumi> yes, in general I am concerned about that
asmeurer has joined #pypy
<tsutsumi> cython does support cpyext, but I've been told by members in this room that heavy use of cpyext is a perf hit, and thus optimizing high utilization paths in cython can have a negative perf hit in pypy
<tsutsumi> specifically if there's a lot of cython calls
<tsutsumi> are there other situations there optimizing for cpython could impact pypy negatively? I think in general how you write python code doesn't matter since, as long as it's simple, it can be jitted anyway
<LarstiQ> hmm, cpyext you get by default from targeting cpython, pypy support would be _not_ using cpyext
<tsutsumi> ah, I see what you mean
<LarstiQ> but I don't know what cython has done lately
<tsutsumi> from what I understand, it's using cpyext still
<tsutsumi> it's a good point though, that cython could just take a different approach for pypy
<LarstiQ> tsutsumi: yes, e.g. how to concatenate strings
<LarstiQ> lru.cache can be a large hit on pypy
<simpson> tsutsumi: Cython *should* absolutely have a mode that emits pure Python which runs decently on PyPy. I'm not sure why it (still?) doesn't.
<tsutsumi> probably just no one has volunteered to put the time in... probably an idea that was run by them, although I don't see it in the github issues
<tsutsumi> I suppose it wouldn't just compile to any vanilla python either: it would be syntax that will jit really well, to ensure that pypy can basically optimize to similar to performance
<tsutsumi> of cython code
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
<tsutsumi> okay, seems like if one was going to improve cython - pypy performance, that would be the right strategy to take.
<tsutsumi> thanks for the insight!
tbodt has joined #pypy
asmeurer has quit [Ping timeout: 264 seconds]
lritter_ has quit [Quit: Leaving]
altendky has joined #pypy
asmeurer has joined #pypy
nunatak has quit [Quit: Leaving]
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
asmeurer has quit [Ping timeout: 264 seconds]
tbodt has joined #pypy
asmeurer has joined #pypy
asmeurer has quit [Ping timeout: 264 seconds]
Graypup_ has quit [Quit: ZNC 1.6.1 - http://znc.in]
Graypup_ has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
demonimin has joined #pypy
asmeurer has joined #pypy