cfbolz changed the topic of #pypy to: PyPy, the flexible snake (IRC logs: https://botbot.me/freenode/pypy/ ) | use cffi for calling C | "the modern world where network packets and compiler optimizations are effectively hostile"
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
adamholmberg has quit [Ping timeout: 252 seconds]
tbodt has joined #pypy
adamholmberg has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
rokujyouhitoma has joined #pypy
tbodt has joined #pypy
rokujyouhitoma has quit [Ping timeout: 248 seconds]
exarkun has quit [Ping timeout: 240 seconds]
exarkun has joined #pypy
cwillu has joined #pypy
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
adamholmberg has quit [Ping timeout: 248 seconds]
harold has quit [Remote host closed the connection]
cloudyplain has joined #pypy
rokujyouhitoma has joined #pypy
gclawes has quit [Ping timeout: 240 seconds]
gclawes has joined #pypy
rokujyouhitoma has quit [Ping timeout: 248 seconds]
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
exarkun has quit [Ping timeout: 240 seconds]
exarkun has joined #pypy
ArneBab has joined #pypy
ceridwen has joined #pypy
ceridwen has quit [Changing host]
ceridwen has joined #pypy
ArneBab_ has quit [Ping timeout: 240 seconds]
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 240 seconds]
pilne has quit [Quit: Quitting!]
tbodt has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
rokujyouhitoma has joined #pypy
forgottenone has joined #pypy
rokujyouhitoma has quit [Ping timeout: 248 seconds]
cloudyplain has quit [Remote host closed the connection]
cloudyplain has joined #pypy
cloudyplain has quit [Read error: Connection reset by peer]
exarkun has quit [Ping timeout: 248 seconds]
exarkun has joined #pypy
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 248 seconds]
cwillu has quit [Ping timeout: 240 seconds]
cloudyplain has joined #pypy
cwillu has joined #pypy
cwillu has quit [Ping timeout: 252 seconds]
raynold has quit [Quit: Connection closed for inactivity]
cwillu has joined #pypy
cwillu has quit [Remote host closed the connection]
cwillu has joined #pypy
vkirilichev has joined #pypy
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 260 seconds]
realitix has joined #pypy
cwillu has quit [Remote host closed the connection]
cwillu has joined #pypy
vkirilichev has quit [Remote host closed the connection]
exarkun has quit [Ping timeout: 248 seconds]
exarkun has joined #pypy
arigo_ has joined #pypy
<kenaan> cfbolz default 2769e258135f /pypy/objspace/std/listobject.py: make sure that get_strategy_from_list_objects does not have random effects :-(
cwillu has quit [Remote host closed the connection]
<cfbolz> fijal: translation is broken, something about str_decode_utf_8
<cfbolz> any clue?
cwillu has joined #pypy
arigato has quit [Quit: ZNC - http://znc.in]
arigo_ has quit [Quit: ZNC - http://znc.in]
arigo has joined #pypy
arigo is now known as arigato
<arigato> cfbolz: there is only ffbad4ff0842 in that range, by you
<cfbolz> pff :-(
<cfbolz> how?
<arigato> no clue
<cfbolz> those have nothing to do with each other
<arigato> ah, it may be a translation order detail
<cfbolz> possible
<cfbolz> I think i'd like to improve that error message
oberstet has joined #pypy
<arigato> it still doesn't make sense for now, digging...
<arigato> specifically, it's a call to str_decode_utf_8() with None as the 5th argument, which I can't find anywhere
<cfbolz> arigato: in a few min I should have a pdb
<cfbolz> then I can tell you where the call is at least
<arigato> yes
<arigato> printing the *where* looks like a good first fix, too
<cfbolz> right
<cfbolz> arigato: but in the graph analyzer there is enough info to give you the call chain
<arigato> yes, that too
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 248 seconds]
vkirilichev has joined #pypy
<kenaan> cfbolz default e2454a241194 /rpython/jit/codewriter/: improve error message: include name of calling graph, not just op
vkirilichev has quit [Ping timeout: 255 seconds]
cloudyplain has quit [Remote host closed the connection]
cloudyplain has joined #pypy
cloudyplain has quit [Read error: Connection reset by peer]
<cfbolz> arigato: the caller is <FunctionGraph of (pypy.objspace.std.unicodeobject:495)decode_object at 0x576236a8>
<arigato> ok, but I don't see how
<arigato> the 5th argument is (None) according to the traceback
<arigato> unicodehelper.decode_error_handler() can never return None
<cfbolz> ok, poking around
<arigato> well, and anyway, there is nothing that changed here, so you probably need to get the tree of calls
<arigato> up to the point where it escapes
<cfbolz> arigato: I don't see at all how str_decode_utf_8 can be elidable, anyway
<cfbolz> the errorhandler can do absolutely anything
<arigato> no, that's the point
<arigato> str_decode_utf_8() should be called only with errorhandlers that don't do too much
<arigato> e.g. module/_codecs calls str_decode_utf_8_impl() instead
<cfbolz> ok
<cfbolz> that's very indirect
<arigato> yes, I agree, but I couldn't find a better way
<cfbolz> ok
<cfbolz> arigato: ah, of course I don't see a call to decode_error_handler, since that is memo
<cfbolz> so I am officially clueless :-(
<arigato> you need the RandomEffectsAnalyzer
<arigato> self.randomeffects_analyzer
<cfbolz> and then?
<arigato> self.randomeffects_analyzer.verbose = True
<cfbolz> ah?
<cfbolz> didn't know about that
<arigato> self.randomeffects_analyzer.__init__(self.randomeffects_analyzer.translator)
<arigato> to clean it up
<cfbolz> thx. trying
<arigato> then self.randomeffects_analyzer.analyze(op)
<arigato> something like that
<cfbolz> aaargh. and of course I am still to blame somehow
<arigato> waa
<cfbolz> but why the None?
<arigato> pff
<arigato> ...yes, no clue
<cfbolz> because it's clearly calling the right thing
<arigato> indeed
exarkun has quit [Ping timeout: 248 seconds]
<arigato> ah, you replaced some w_obj.float_w(space) with space.float_w(w_arg1)
exarkun has joined #pypy
<cfbolz> arigato: no, it's more indirect
<cfbolz> arigato: I move it to a different place
<arigato> which just calls w_obj.float_w(), of course, but on W_Root
<arigato> no, I think it doesn't matter
<cfbolz> it does matter
<arigato> these places are the only callers to things like Cls_ff.__init__, no?
<cfbolz> yes
<cfbolz> w_obj.float_w(space) does not have random effects, because w_obj is known to be a float
<cfbolz> so this should fix it:
<arigato> yes, and that is true whether you say w_obj.float_w() inside Cls_ff.__init__ or just outside
<arigato> yes
<cfbolz> ok
<cfbolz> obscure
<arigato> definitely
<cfbolz> arigato: but note that 2769e258135f does the same kind of thing :-(
<arigato> ff363fceb3c5 too
<cfbolz> gah
cloudyplain has joined #pypy
<arigato> it could probably be fixed, but is it a good idea: @specialize.call_location on space.int_w and space.float_w
cloudyplain has quit [Read error: Connection reset by peer]
<cfbolz> arigato: I doubt it
<cfbolz> arigato: maybe specializing on the argument type?
<arigato> right, but that's why I suggested @specialize.call_location, because we're sure about the result and it's a one-operation function anyway
<arigato> butthe general style before ff363fceb3c5 shows a problem anyway
<cfbolz> I suppose so
<cfbolz> arigato: feel like trying?
<arigato> we need to check isinstance(w, W_IntObject)
<arigato> and not space.type(...)
<cfbolz> yes
<cfbolz> we do that a bit everywhere
<arigato> so meh
<arigato> ah?
<cfbolz> at least in all the strategies
<arigato> right
rokujyouhitoma has joined #pypy
<arigato> ok, I can give it a try
cloudyplain has joined #pypy
<cfbolz> arigato: i'll try to improve the error mor
<arigato> so, what is @specialize.argtype() exactly doing with subclasses...
<arigato> cfbolz: thanks
<cfbolz> (by automating the verbose trick)
rokujyouhitoma has quit [Ping timeout: 240 seconds]
tormoz has quit [Ping timeout: 260 seconds]
<kenaan> arigo default 5bcb6691636b /rpython/annotator/test/test_annrpython.py: checks that specialize:argtype() makes two copies of a function f(), one for the base class and one for the subclass
vkirilichev has joined #pypy
antocuni has joined #pypy
tormoz has joined #pypy
<cfbolz> arigato: hm, does that also work if the call site first is annotated to B, and then later generalized to A?
<arigato> roughly yes
<arigato> I'm not completely sure about the return annotation
nimaje1 has joined #pypy
nimaje is now known as Guest97987
Guest97987 has quit [Killed (karatkievich.freenode.net (Nickname regained by services))]
nimaje1 is now known as nimaje
<arigato> when the call site is generalized, it'll call a single different function
<cfbolz> ok
vkirilichev has quit [Ping timeout: 246 seconds]
<kenaan> arigo default 89a8f8f1a1e2 /pypy/interpreter/baseobjspace.py: translation fix: avoids calling the general methods like W_Root.int_w() on objects that are known to be e.g. W_IntO...
rokujyouhitoma has joined #pypy
inhahe_ has quit [Read error: Connection reset by peer]
glyph has quit [Excess Flood]
glyph has joined #pypy
rokujyouhitoma has quit [Ping timeout: 248 seconds]
<cfbolz> arigato: what's the easiest way to get a random effect in a test?
<cfbolz> ah, I see
inhahe_ has joined #pypy
inhahe_ has quit [Client Quit]
inhahe_ has joined #pypy
exarkun has quit [Read error: Connection reset by peer]
exarkun has joined #pypy
marr has joined #pypy
vkirilichev has joined #pypy
vkirilichev has quit [Ping timeout: 248 seconds]
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 240 seconds]
<cfbolz> arigato: are you getting somewhere with the fix? or should I commit the translation-unbreaking change for now
<cfbolz> argh
<cfbolz> seems I am blind ;-)
<kenaan> cfbolz default c2c1b6ca6794 /rpython/: print an explanation why the function cannot be elidable/loopinvariant by showing the callstack leading to the pro...
antocuni has quit [Ping timeout: 240 seconds]
<bbot2> Started: http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-64/builds/4891 [Carl Friedrich Bolz-Tereick: force build]
cloudyplain has quit [Remote host closed the connection]
vkirilichev has joined #pypy
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 240 seconds]
exarkun has quit [Ping timeout: 260 seconds]
exarkun has joined #pypy
vkirilichev has quit [Ping timeout: 248 seconds]
<bbot2> Success: http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-64/builds/4891 [Carl Friedrich Bolz-Tereick: force build]
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 246 seconds]
vkirilichev has joined #pypy
vkirilichev has quit [Ping timeout: 248 seconds]
adamholmberg has joined #pypy
fryguybob has joined #pypy
cwillu has quit [Ping timeout: 252 seconds]
antocuni has joined #pypy
cwillu has joined #pypy
rokujyouhitoma has joined #pypy
cwillu has quit [Ping timeout: 240 seconds]
rokujyouhitoma has quit [Ping timeout: 246 seconds]
cwillu has joined #pypy
fryguybob has quit [Quit: Lost terminal]
vkirilichev has joined #pypy
vkirilichev has quit [Ping timeout: 248 seconds]
marky1991 has joined #pypy
adamholmberg has quit [Remote host closed the connection]
dash has joined #pypy
<dash> rvmprof is definitely mad at me today: https://bpaste.net/show/82fd26c466d9
<dash> any suggestions on finding out what I did wrong?
adamholmberg has joined #pypy
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 264 seconds]
__main__ has joined #pypy
__main__ has quit [Read error: Connection reset by peer]
_main_0 has quit [Ping timeout: 240 seconds]
_main_ has joined #pypy
kaizoku has quit [*.net *.split]
__main__ has joined #pypy
__main__ has quit [Read error: Connection reset by peer]
__main__ has joined #pypy
_main_ has quit [Read error: Connection reset by peer]
__main__ has quit [Read error: Connection reset by peer]
__main__ has joined #pypy
yuyichao_ has quit [Ping timeout: 260 seconds]
vkirilichev has joined #pypy
jcea has quit [Remote host closed the connection]
jcea has joined #pypy
yuyichao_ has joined #pypy
vkirilichev has quit [Ping timeout: 248 seconds]
raynold has joined #pypy
realitix has quit [Ping timeout: 260 seconds]
<mjacob> dash: just a wild guess, maybe you don't call enter_code() / leave_code() in the right order?
<dash> I'll have a look
<mjacob> dash: if you called enter_code() with X, Y, Z you should call leave_code() with return values of calling enter_code() with Z, Y, X
tormoz has quit [Remote host closed the connection]
tormoz has joined #pypy
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 260 seconds]
<dash> mjacob: looks like we have no direct invocations, just use of vmprof_execute_code decorator
realitix has joined #pypy
<realitix> Hi arigato, I answered on the issus I opened last time. Can you reopen the issue ? I'm in the train right now so my connection is instable
vkirilichev has joined #pypy
realitix has quit [Quit: Leaving]
vkirilichev has quit [Ping timeout: 248 seconds]
tbodt has joined #pypy
tbodt has quit [Client Quit]
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 248 seconds]
tbodt has joined #pypy
antocuni has quit [Ping timeout: 255 seconds]
tito_ is now known as tito
tito has quit [Changing host]
tito has joined #pypy
marky1991 has quit [Ping timeout: 252 seconds]
vkirilichev has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
<kenaan> cfbolz regalloc-playground 1af751546a21 /rpython/jit/backend/llsupport/rewrite.py: typo
<kenaan> cfbolz regalloc-playground 364d9e356958 /rpython/jit/backend/: some cleanup in the call hinting implementation, a longer test with two calls
<kenaan> cfbolz regalloc-playground 91c860e7fe64 /rpython/jit/backend/x86/: implement hints for int_sub
<kenaan> cfbolz regalloc-playground f60a7734d1b4 /rpython/jit/backend/: float coalescing support
marky1991 has joined #pypy
vkirilichev has quit [Ping timeout: 240 seconds]
tbodt has joined #pypy
haypo has joined #pypy
tbodt has quit [Ping timeout: 240 seconds]
tbodt has joined #pypy
tbodt has quit [Read error: Connection reset by peer]
rokujyouhitoma has joined #pypy
<mjacob> dash: did you try with non-jit or jit?
<dash> i got this running untranslated
<mjacob> dash: maybe you want to put some debug prints in, including stack traces, to see from where the functions are called and who violates in FIFO requirement
<dash> I think it might have just been a stack overflow, I was running this on cpython
<dash> I took out all the rvmprof stuff and ran it, got StackOverflow
rokujyouhitoma has quit [Ping timeout: 240 seconds]
<mattip> it seems cpyext calls do not catch rstackovf.StackOverflow exceptions, there is a simple fix that translates and solves the issue on Numpy,
<dash> I just need to improve pypy support on nixos and use that all the time, heh
<mattip> but I would like to write a test. I guess I need to write a recursive call that gets wrapped as a tp_* function?
tormoz has quit [Remote host closed the connection]
<mjacob> dash: what's missing for good pypy support on nix?
tormoz has joined #pypy
<dash> mjacob: maintenance of package collection for pypy compat, mostly
<mjacob> dash: isn't that a problem of the packages itself?
<dash> I had to tweak a couple dependencies in nixpkgs to get my stack working, it's just under-used
<dash> well, for example, 'configparser' was disabled for pypy in nixpkgs, but it works with pypy as of last release
<dash> 'attrs' had 'pympler' (which doesn't work on pypy) as a build dependency but works fine without it
kaizoku has joined #pypy
vkirilichev has joined #pypy
vkirilichev has quit [Ping timeout: 240 seconds]
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 248 seconds]
traverseda has joined #pypy
tbodt has joined #pypy
<kenaan> mattip pycheck-macros 58c6a84c10a6 /pypy/module/cpyext/include/: add CPython-compatible Py*_Check{,Exact} macros to *.h
<kenaan> mattip pycheck-macros 940759a2668e /pypy/module/cpyext/: create non-exporting build_type_checkers_flags with fastpath for pto, use everywhere
<kenaan> mattip default aa8394da03c4 /pypy/module/cpyext/api.py: fix numpy test suite fail, test needed
<kenaan> mattip pycheck-macros 568bae2b4fa4 /: merge default into branch
<mattip> pycheck-macros did not give any speedup on numpy's test suite,
dash has left #pypy ["User left"]
<mattip> both it and default run in about 150 secs, CPython in about 30 secs (on my machine)
<mattip> maybe cython-heavy pandas will show a difference?
vkirilichev has joined #pypy
<fijal> mattip: that;s really not bad tbh
<fijal> I mean our own tests are 2-4x slower
<fijal> so a factor of 5 is nothing bad really
<mattip> I was hoping converting PyString_Check and friends into macros rather than cpyext function calls would have an effect
<mattip> but numpy tests are probably more object-creation and getitem-setitem heavy
<fijal> did you try to use perf to find out if they actually are a problem?
<fijal> run perf :)
<mattip> ok, thanks
<fijal> it takes a bit of effort to get going and the output is shitty, but you can get something out of it
<mattip> it just seemed like low-hanging fruit, so I will just leave it for now, maybe after finishing a few pull requests to pandas, numpy
<fijal> I'm sure there is a case where it helps :)
tormoz has quit [Remote host closed the connection]
<mattip> it seemed like an easy task for the upcoming 5.9, and severely breaks API/ABI compatibility,
<mattip> so if we are considering it at all it would be better to merge now
tormoz has joined #pypy
<bbot2> Started: http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-64/builds/4892 [mattip: proof of concept, pycheck-macros]
<traverseda> I want to extend xonsh-shell to respond to environment syscalls. Obviously, since I'd be making a library, I need to use the `embedding_api`. Can I have that connect to an existing python process (probably not), or do I need to use some kind of IPC mechanism?
<traverseda> With cffi
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
tbodt has quit [Client Quit]
tormoz has quit [Remote host closed the connection]
rokujyouhitoma has joined #pypy
tormoz has joined #pypy
<nimaje> afaik xonsh is written in python, then simply use the cffi module
rokujyouhitoma has quit [Ping timeout: 240 seconds]
<traverseda> nimaje, that makes sense, and saves me a bunch of time. Thank you
<traverseda> I was thinking about it wrong
vkirilichev has quit [Remote host closed the connection]
oberstet has quit [Ping timeout: 246 seconds]
rokujyouhitoma has joined #pypy
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
rokujyouhitoma has quit [Ping timeout: 252 seconds]
tbodt has joined #pypy
tbodt has quit [Client Quit]
adamholmberg has quit [Ping timeout: 240 seconds]
vkirilichev has joined #pypy
<bbot2> Success: http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-64/builds/4892 [mattip: proof of concept, pycheck-macros]
vkirilichev has quit [Ping timeout: 240 seconds]
forgottenone has quit [Quit: Konversation terminated!]
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 240 seconds]
vkirilichev has joined #pypy
tbodt has joined #pypy
adamholmberg has joined #pypy
tormoz has quit [Remote host closed the connection]
adamholmberg has quit [Remote host closed the connection]
tormoz has joined #pypy
rokujyouhitoma has joined #pypy
tormoz has quit [Read error: Connection reset by peer]
rokujyouhitoma has quit [Ping timeout: 240 seconds]
tormoz has joined #pypy
tormoz has quit [Remote host closed the connection]
tormoz has joined #pypy
vkirilichev has quit [Remote host closed the connection]
lritter has joined #pypy
rokujyouhitoma has joined #pypy
antocuni has joined #pypy
kipras is now known as kipras`away
rokujyouhitoma has quit [Ping timeout: 240 seconds]
yuyichao_ has quit [Ping timeout: 255 seconds]
cloudyplain has joined #pypy
marr has quit [Ping timeout: 240 seconds]
yuyichao_ has joined #pypy
cloudyplain has quit [Remote host closed the connection]
cloudyplain has joined #pypy
cloudyplain has quit [Ping timeout: 260 seconds]
cloudyplain has joined #pypy
cloudyplain has quit [Remote host closed the connection]
cloudyplain has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
cloudyplain has quit [Ping timeout: 240 seconds]
tbodt has joined #pypy
rokujyouhitoma has joined #pypy