antocuni changed the topic of #pypy to: PyPy, the flexible snake (IRC logs: https://botbot.me/freenode/pypy/ ) | use cffi for calling C | "PyPy: the Gradual Reduction of Magic (tm)"
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
marr has quit [Ping timeout: 264 seconds]
tbodt has quit [Client Quit]
ceridwen has quit [Ping timeout: 252 seconds]
ceridwen has joined #pypy
tbodt has joined #pypy
lritter_ has joined #pypy
__Yiota has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
tbodt has quit [Ping timeout: 258 seconds]
jcea has quit [Quit: jcea]
__Yiota has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
__Yiota has joined #pypy
kipras is now known as kipras`away
hvariant has joined #pypy
lritter__ has joined #pypy
lritter_ has quit [Ping timeout: 240 seconds]
ArneBab has joined #pypy
ArneBab_ has quit [Ping timeout: 240 seconds]
forgottenone has joined #pypy
pilne has quit [Quit: Quitting!]
forgottenone has quit [Quit: Konversation terminated!]
__Yiota has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
hvariant has quit [Remote host closed the connection]
zmt00 has quit [Quit: Leaving]
drolando has quit [Remote host closed the connection]
drolando has joined #pypy
realitix has joined #pypy
oberstet has joined #pypy
raynold has quit [Quit: Connection closed for inactivity]
antocuni has joined #pypy
Rotonen has quit [Ping timeout: 240 seconds]
Rotonen has joined #pypy
cstratak has joined #pypy
marr has joined #pypy
__Yiota has joined #pypy
_stian has joined #pypy
<_stian> Hey, is it possible to make similar rewrite rules that INT have to LongObjects (like mul and div to shifts)?
<cfbolz> in the JIT? not easily
<cfbolz> _stian: that would rewrite calls, which we don't have much support for right now
<_stian> Ok
<cfbolz> _stian: you are thinking of something like implementing longnum * 2 by longnum << 1?
<_stian> The case is handled in rbigint, but calling right/lshift directly is still way faster.
<_stian> Correct
antocuni has quit [Ping timeout: 240 seconds]
<_stian> Hmm, maybe not as much as I remember, it only makes 2% difference.
<cfbolz> _stian: where is the code in rbigint that handles it?
<cfbolz> ah, one of the cases in int_mul, I suppose
<_stian> 2% after the JIT kicks in it seems, doing a loop too few times to be optimized seem to have a 50% cost.
<_stian> ye
<_stian> digit & (digit - 1) == 0: result = self.lqshift(ptwotable[digit])
<cfbolz> if it becomes super important, there is still something you can do: you can carefully use @jit.unroll_iff(lambda self, b: jit.isconstant(b)) on int_mul to achieve some of what you describe
<cfbolz> but then int_mul would be no longer elidable, which is also not good
mattip has quit [Ping timeout: 260 seconds]
alex_ has joined #pypy
<_stian> Most of the difference seem to be on unjitted code, doing a loop 100 times with shift gives me 0.16s with mul vs 0.09s with shift, over 50%. While at 10.000 it gives 7.3s to 7.16s, about 2%.
mattip has joined #pypy
<_stian> So I guess it isn't that important.
traverseda has quit [Ping timeout: 248 seconds]
__Yiota has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
jcea has joined #pypy
antocuni has joined #pypy
__Yiota has joined #pypy
__Yiota has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
realitix has quit [Ping timeout: 246 seconds]
realitix has joined #pypy
__Yiota has joined #pypy
adamholmberg has joined #pypy
<_stian> Have __slots__ any special meaning in rpython, or is it just used in python / uncompiled mode? Just tried adding it to a class to see, and the binary increased by about 100byte.
exarkun has quit [Ping timeout: 252 seconds]
lritter__ has quit [Remote host closed the connection]
adamholmberg has quit [Remote host closed the connection]
__Yiota has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
adamholmberg has joined #pypy
nedbat has quit [Ping timeout: 255 seconds]
exarkun has joined #pypy
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
nedbat has joined #pypy
__Yiota has joined #pypy
_stian has quit [Ping timeout: 260 seconds]
exarkun has quit [Ping timeout: 240 seconds]
exarkun has joined #pypy
forgottenone has joined #pypy
yuyichao has quit [Ping timeout: 248 seconds]
yuyichao has joined #pypy
marky1991 has joined #pypy
<cfbolz> _stian: slots have no meaning
<cfbolz> And the binary size can fluctuate a lot just by recompiling
exarkun has quit [Ping timeout: 246 seconds]
exarkun has joined #pypy
zmt00 has joined #pypy
jamesaxl has quit [Read error: Connection reset by peer]
jamesaxl has joined #pypy
adamholm_ has joined #pypy
adamholmberg has quit [Ping timeout: 260 seconds]
exarkun has quit [Ping timeout: 255 seconds]
realitix has quit [Quit: Leaving]
exarkun has joined #pypy
WGH has quit [Ping timeout: 255 seconds]
tbodt has joined #pypy
WGH has joined #pypy
raynold has joined #pypy
marky1991 has quit [Remote host closed the connection]
tbodt has quit [Client Quit]
exarkun has quit [Ping timeout: 240 seconds]
tbodt has joined #pypy
marky1991 has joined #pypy
marky1991 has quit [Remote host closed the connection]
exarkun has joined #pypy
marky1991 has joined #pypy
marky1991 has quit [Remote host closed the connection]
marky1991 has joined #pypy
marky1991 has quit [Remote host closed the connection]
oberstet has quit [Ping timeout: 240 seconds]
marky1991 has joined #pypy
marky1991 has quit [Ping timeout: 248 seconds]
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
oberstet has joined #pypy
<mattip> arigato: any progress on reviewing the buildbot changes?
<ionelmc> would cffi questions be answered here?
<ionelmc> can i just pass a big lump of C code i wanna use in python to ffibuilder.set_source?
cstratak has quit [Quit: Leaving]
antocuni has quit [Ping timeout: 246 seconds]
antocuni has joined #pypy
tbodt has joined #pypy
tbodt has quit [Client Quit]
<antocuni> ionelmc: yes
<antocuni> ionelmc: you can also pass sources=['file1.c', 'file2.c']
<antocuni> they will be compiled and linked together with the extension
<antocuni> basically, most of the kwargs you pass are forwarded to distutils.Extension
tbodt has joined #pypy
tbodt has quit [Client Quit]
marky1991 has joined #pypy
antocuni has quit [Ping timeout: 240 seconds]
kipras`away is now known as kipras
tbodt has joined #pypy
OOPMan has joined #pypy
<OOPMan> I don't suppose anyone in here has a lot of experience with async generators and/or comprehensions from python 3.6?
<OOPMan> I don't suppose you know of any async friendly equivalent to `reduce`?
exarkun has quit [Read error: Connection reset by peer]
<nanonyme> OOPMan, I'd be wary of things that do a lot of context switching in any case, async programming or threading
exarkun has joined #pypy
<OOPMan> nanonyme: Not really answering my question but based on some googling it seems the answer is basically no
<OOPMan> Looks like it shouldn't be hard to implement though
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
OOPMan has quit [Quit: Konversation terminated!]
redj has quit [Ping timeout: 248 seconds]
tbodt has joined #pypy
<ionelmc> what did antocuni mean by sources=... ?
<ionelmc> set_sources(..., sources=[...]) i guess?
marky1991 has quit [Ping timeout: 255 seconds]
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
tbodt has quit [Client Quit]
tbodt has joined #pypy
antocuni has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
tbodt has quit [Ping timeout: 255 seconds]
tbodt has joined #pypy
redj has joined #pypy
antocuni has quit [Ping timeout: 240 seconds]
rubdos has quit [Ping timeout: 255 seconds]
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
<ronan> pff... _ctypes is a mess
<exarkun> heh heh heh.
marky1991 has joined #pypy
forgottenone has quit [Quit: Konversation terminated!]
zmt01 has joined #pypy
zmt00 has quit [Ping timeout: 240 seconds]
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
antocuni has joined #pypy
tbodt has joined #pypy
marky1991 has quit [Ping timeout: 255 seconds]
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
tbodt has quit [Client Quit]
tbodt has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
marky1991 has joined #pypy
<kenaan> stian math-improvements 2a90db93be84 /rpython/rlib/rbigint.py: replace construction of a onedigit with premade, and mark sign and size as immutable (which is true post ...
<kenaan> stian math-improvements 7427553eee6b /rpython/rlib/rbigint.py: Digits don't change post-construction
<kenaan> stian math-improvements e80b5cdab0a6 /rpython/rlib/: Fix int_mod with mod argument
oberstet has quit [Ping timeout: 240 seconds]
tbodt has joined #pypy
mattip has left #pypy ["bye"]
marky1991 has quit [Ping timeout: 240 seconds]
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
drolando has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
drolando has joined #pypy
drolando has quit [Remote host closed the connection]
drolando has joined #pypy
adamholm_ has quit [Remote host closed the connection]
tbodt has joined #pypy
yuyichao has quit [Ping timeout: 240 seconds]
yuyichao has joined #pypy
drolando has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
marr has quit [Ping timeout: 240 seconds]
antocuni has quit [Ping timeout: 252 seconds]
drolando has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
adamholmberg has joined #pypy