| voidspace (~voidspace@python/psf/voidspace) left irc: Quit: Uhm... gotta go | 00:01 | |
| espes (espes@2001:470:1f05:ca1::) left irc: Read error: Connection timed out | 00:01 | |
| espes (espes@2001:470:1f05:ca1::) joined #pypy. | 00:01 | |
| nedbat (~nedbat@python/psf/nedbat) joined #pypy. | 00:12 | |
| `fox` (~fox@host2-105-dynamic.54-82-r.retail.telecomitalia.it) left irc: Ping timeout: 248 seconds | 00:15 | |
| antocuni (~antocuni@host117-71-dynamic.58-82-r.retail.telecomitalia.it) left irc: Ping timeout: 252 seconds | 00:35 | |
| nickik (~nick@2001:67c:20a1:1018:226:9eff:feef:8369) left irc: Quit: Verlassend | 00:36 | |
| overminder (~overminde@wf118-245.ust.hk) joined #pypy. | 00:57 | |
| nedbat (~nedbat@python/psf/nedbat) left irc: Ping timeout: 276 seconds | 00:57 | |
| bbot2 | 3Success: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64-2/builds/13 | 00:58 |
|---|---|---|
| etrepum (~bob@75-101-96-144.dsl.static.sonic.net) joined #pypy. | 00:58 | |
| bbot2 | 3Success: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64/builds/185 | 01:03 |
| overminder (~overminde@wf118-245.ust.hk) left irc: Read error: Connection reset by peer | 01:06 | |
| nedbat (~nedbat@python/psf/nedbat) joined #pypy. | 01:14 | |
| espes (espes@2001:470:1f05:ca1::) left irc: Read error: Connection timed out | 01:14 | |
| espes (espes@2001:470:1f05:ca1::) joined #pypy. | 01:16 | |
| bbot2 | 4Failure: 15http://buildbot.pypy.org/builders/own-macosx-x86-32/builds/757 | 01:18 |
| bbot2 | Started: 15http://buildbot.pypy.org/builders/own-linux-x86-32/builds/1902 | 01:30 |
| bbot2 | Started: 15http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-64/builds/653 | 01:30 |
| bbot2 | Started: 15http://buildbot.pypy.org/builders/pypy-c-jit-macosx-x86-64/builds/318 | 01:30 |
| bbot2 | Started: 15http://buildbot.pypy.org/builders/pypy-c-jit-win-x86-32/builds/308 | 01:30 |
| bbot2 | Started: 15http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-64/builds/657 | 01:30 |
| bbot2 | Started: 15http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-32/builds/1173 | 01:30 |
| bbot2 | Started: 15http://buildbot.pypy.org/builders/pypy-c-Ojit-no-jit-linux-x86-32/builds/840 | 01:30 |
| bbot2 | Started: 15http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-32/builds/1492 | 01:30 |
| bbot2 | Started: 15http://buildbot.pypy.org/builders/own-linux-x86-64/builds/767 | 01:30 |
| derdon (~derdon@pD9E1DB40.dip.t-dialin.net) left irc: Remote host closed the connection | 01:33 | |
| Garen (garen@69.76.18.3) joined #pypy. | 01:58 | |
| bbot2 | 3Success: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-32/builds/994 | 02:45 |
| Alex_Gaynor (u1246@gateway/web/irccloud.com/x-wcjjsnupscpcbpiy) left irc: Read error: Connection reset by peer | 02:55 | |
| hongminhee (u295@gateway/web/irccloud.com/x-rfobsaryywiizdur) left irc: Remote host closed the connection | 02:55 | |
| asmeurer (~asmeurer@c-174-56-21-245.hsd1.nm.comcast.net) left irc: Quit: asmeurer | 02:56 | |
| Alex_Gaynor (u1246@gateway/web/irccloud.com/x-wtpicwepjcumfjkp) joined #pypy. | 03:02 | |
| #pypy: mode change '+o Alex_Gaynor' by ChanServ!ChanServ@services. | 03:02 | |
| CIA-53 | 03mikefc 07roundup * 10#959/numpypy array operation improperly jitted away: | 03:03 |
| CIA-53 | Bug seems to have disappeared on latest nightly. Would be useful if we knew how | 03:03 |
| CIA-53 | this was fixed before closing issue ... * 14https://bugs.pypy.org/issue959 | 03:03 |
| mikefc_ (~mikefc@60-242-240-196.static.tpgi.com.au) joined #pypy. | 03:06 | |
| mikefc (~mikefc@60-242-240-196.static.tpgi.com.au) left irc: Read error: Connection reset by peer | 03:06 | |
| Nick change: mikefc_ -> mikefc | 03:06 | |
| nettok (~quassel@190.143.182.114) joined #pypy. | 03:13 | |
| hongminhee (u295@gateway/web/irccloud.com/x-muooeydowgqwbonx) joined #pypy. | 03:14 | |
| nettok_ (~quassel@190.143.178.250) left irc: Ping timeout: 268 seconds | 03:16 | |
| nettok_ (~quassel@190.143.182.114) joined #pypy. | 03:25 | |
| nettok (~quassel@190.143.182.114) left irc: Ping timeout: 252 seconds | 03:26 | |
| lahwran | what is the recommended way to interface C code with pypy? | 03:31 |
| mikefc | ctypes (alex told me yesterday when I asked the same question) | 03:36 |
| jyp (~interrupt@175.197.245.105) joined #pypy. | 03:41 | |
| anish_ (anish@nat/redhat/x-apqmwgcutpqsgfwl) joined #pypy. | 03:42 | |
| bbot2 | 3Success: 15http://buildbot.pypy.org/builders/own-linux-x86-32/builds/1902 | 03:47 |
| nedbat (~nedbat@python/psf/nedbat) left irc: Ping timeout: 248 seconds | 04:15 | |
| bbot2 | 3Success: 15http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-64/builds/657 | 04:53 |
| bbot2 | 3Success: 15http://buildbot.pypy.org/builders/pypy-c-Ojit-no-jit-linux-x86-32/builds/840 | 04:54 |
| bbot2 | 3Success: 15http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-32/builds/1492 | 05:05 |
| mat^2 (~mathias@87.55.0.198) left irc: Ping timeout: 248 seconds | 05:14 | |
| bbot2 | 3Success: 15http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-32/builds/1173 | 05:17 |
| bbot2 | 3Success: 15http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-64/builds/653 | 05:27 |
| LiliEA (~LiliEAm@97-88-28-179.dhcp.roch.mn.charter.com) left irc: Ping timeout: 268 seconds | 05:57 | |
| Vorpal (~AnMaster@unaffiliated/anmaster) left irc: Ping timeout: 276 seconds | 06:00 | |
| aleksi (~aleksi@85.235.191.82) joined #pypy. | 06:25 | |
| bbot2 | 3Success: 15http://buildbot.pypy.org/builders/own-linux-x86-64/builds/767 | 06:27 |
| bbot2 | 4Failure: 15http://buildbot.pypy.org/builders/pypy-c-jit-win-x86-32/builds/308 | 07:08 |
| Ademan (~dan@adsl-71-141-224-79.dsl.snfc21.pacbell.net) left irc: Quit: leaving | 07:08 | |
| mat^2 (~mathias@87.55.0.198) joined #pypy. | 07:11 | |
| bbot2 | 4Failure: 15http://buildbot.pypy.org/builders/pypy-c-jit-macosx-x86-64/builds/318 | 07:12 |
| ShadowE989 (~ShadowE98@74-47-218-61.dr02.rmny.wv.frontiernet.net) left irc: Quit: Leaving | 07:28 | |
| ShadowE989 (~ShadowE98@74-47-218-61.dr02.rmny.wv.frontiernet.net) joined #pypy. | 07:32 | |
| nettok_ (~quassel@190.143.182.114) left irc: Remote host closed the connection | 07:37 | |
| JaRoel|4d (~jaroel|4d@office.fourdigits.nl) joined #pypy. | 07:42 | |
| jyp (~interrupt@175.197.245.105) left irc: Read error: No route to host | 07:46 | |
| jyp (~interrupt@220.73.24.227) joined #pypy. | 07:47 | |
| jyp (~interrupt@220.73.24.227) left irc: Remote host closed the connection | 07:47 | |
| jyp (~interrupt@220.73.24.227) joined #pypy. | 08:02 | |
| Ademan (~dan@adsl-71-141-224-79.dsl.snfc21.pacbell.net) joined #pypy. | 08:04 | |
| mat^2 (~mathias@87.55.0.198) left irc: Ping timeout: 252 seconds | 08:13 | |
| mat^2 (~mathias@87.55.0.198) joined #pypy. | 08:15 | |
| antocuni (~antocuni@host117-71-dynamic.58-82-r.retail.telecomitalia.it) joined #pypy. | 08:15 | |
| oal (u4126@gateway/web/irccloud.com/x-npcymlcuqwjnizie) left irc: Read error: Operation timed out | 08:16 | |
| alexsuraci (u1962@gateway/web/irccloud.com/x-oksppyhxdlxsrudn) left irc: Read error: Operation timed out | 08:16 | |
| Alex_Gaynor (u1246@gateway/web/irccloud.com/x-wtpicwepjcumfjkp) left irc: Excess Flood | 08:19 | |
| bfirsh (u1308@gateway/web/irccloud.com/x-pkpvgeeuoeqbnthj) left irc: Excess Flood | 08:19 | |
| alexsuraci (u1962@gateway/web/irccloud.com/x-tjiivangckhudhak) joined #pypy. | 08:21 | |
| kkris (~kris@178.114.47.89.wireless.dyn.drei.com) joined #pypy. | 08:23 | |
| Alex_Gaynor (u1246@gateway/web/irccloud.com/x-hppuplnqihshavje) joined #pypy. | 08:25 | |
| #pypy: mode change '+o Alex_Gaynor' by ChanServ!ChanServ@services. | 08:25 | |
| oal (u4126@gateway/web/irccloud.com/x-rcoxytvybconcfsl) joined #pypy. | 08:25 | |
| bfirsh (u1308@gateway/web/irccloud.com/x-pdonzebgljlrwclh) joined #pypy. | 08:30 | |
| espes (espes@2001:470:1f05:ca1::) left irc: Read error: Connection timed out | 08:31 | |
| espes (espes@2001:470:1f05:ca1::) joined #pypy. | 08:32 | |
| Arach (~arach@128.75.133.76) left irc: Ping timeout: 240 seconds | 08:49 | |
| kkris1 (~kris@80-123-45-103.adsl.highway.telekom.at) joined #pypy. | 08:50 | |
| kkris (~kris@178.114.47.89.wireless.dyn.drei.com) left irc: Ping timeout: 248 seconds | 08:52 | |
| kennethreitz (~kennethre@c-24-127-96-129.hsd1.va.comcast.net) left irc: Ping timeout: 240 seconds | 08:56 | |
| jyp (~interrupt@220.73.24.227) left irc: Remote host closed the connection | 08:59 | |
| Arach (~arach@128.75.168.204) joined #pypy. | 09:01 | |
| kenaan | 12fijal default 11a91f8bee90b0 15/pypy/tool/jitlogparser/: some fixes | 09:07 |
| kenaan | 12fijal jitviewer 110768b9ec165c 15/bin/jitviewer.py: fix PATH | 09:14 |
| kenaan | 12fijal jitviewer 1118fe3ae6deff 15/: some progress. Disable css_class because it's outrageous | 09:14 |
| `fox` (~fox@host139-108-dynamic.245-95-r.retail.telecomitalia.it) joined #pypy. | 09:17 | |
| G2P (~G2P@fw-asn1.ornis.com) joined #pypy. | 09:23 | |
| legogris (~legogris@c80-217-207-157.bredband.comhem.se) left irc: Ping timeout: 252 seconds | 09:27 | |
| legogris (~legogris@c80-217-207-157.bredband.comhem.se) joined #pypy. | 09:29 | |
| kenaan | 12hakanardo jit-improve-nested-loops 113eafa11552d5 15/pypy/jit/metainterp/optimizeopt/: prevent a BadVirtualState exception from escaping here, the loop will be discovered to be inva... | 09:41 |
| fijal | hakanardo: ping | 09:47 |
| hakanardo | morning | 09:47 |
| fijal | so what is ABORT_BAD_LOOP? | 09:47 |
| hakanardo | it is used when we try to retrace a loop | 09:49 |
| hakanardo | but ends up escaping the loop and tracing something else | 09:49 |
| hakanardo | ie we find some other loop than the one we were trying to retrace | 09:50 |
| hakanardo | this happens after we have traced a bridge that ends in a virtual state that does not mach the loop | 09:52 |
| hakanardo | this non-matching bridge is optimized and placed in self.partial_trace | 09:52 |
| hakanardo | ending with a label instead of a jump | 09:52 |
| hakanardo | we then continue to trace from that point expecting to retrace the loop to make a new specialized version of it | 09:53 |
| hakanardo | but the trace closes in on it self at some other point than the label at the end of the initial partial_trace | 09:54 |
| kenaan | 12fijal default 117924477d6680 15/pypy/tool/jitlogparser/parser.py: some simplifications | 09:54 |
| hakanardo | so what we could do instead of raising ABORT_BAD_LOOP would be to extend the trace | 09:54 |
| hakanardo | sorry extend the partial_trace with the extra operations between the label at it's end | 09:55 |
| hakanardo | and the point where the loop closes | 09:55 |
| hakanardo | and then produce a new loop insteda of a retrace | 09:55 |
| hakanardo | am I making sens to you? | 09:55 |
| fijal | yes | 09:56 |
| fijal | I wonder how harmful that is | 09:56 |
| fijal | hakanardo: right now I see it few times per a test run | 09:56 |
| fijal | (~20s on CPython) | 09:56 |
| fijal | and tons of ABORT_TOO_LONG | 09:56 |
| kenaan | 12fijal jitviewer 117d2ec216e348 15/_jitviewer/: simplify and reintroduce cssclass, this time saneish | 09:56 |
| hakanardo | for somewhat longer loops ABORT_BAD_LOOP should be rare | 09:57 |
| hakanardo | since it will only hapen if you try to retrace the very last iteration | 09:58 |
| fijal | well, it's by far not rare | 09:58 |
| hakanardo | ie you have to escape the loop exactly while tracing | 09:58 |
| mat^2 (~mathias@87.55.0.198) left irc: Ping timeout: 276 seconds | 09:59 | |
| hakanardo | ok so we should fix that case then :) | 09:59 |
| fijal | ok | 10:01 |
| fijal | well, I'm observing it on a regular basis | 10:01 |
| fijal | when running pypy py.test module/micronumpy/test/test_numarray.py | 10:01 |
| hakanardo | cases like this where you dont get simple loops but more advanced graphs of traces needs some attention I think... | 10:01 |
| fijal | I'm also observing ABORT_TOO_LONG way more often | 10:01 |
| fijal | but I have no idea where | 10:01 |
| fijal | no idea how to fix ti | 10:01 |
| hakanardo | inreacse the limit? | 10:02 |
| fijal | no, that ends up with tons and tons of useless tracing | 10:04 |
| fijal | it's not that case | 10:04 |
| fijal | it even hits too long if I only trace from start | 10:04 |
| hakanardo | so, estimate a good limit for each loop dynamically at runtime | 10:04 |
| fijal | how do you know? | 10:04 |
| fijal | that's probably not even doing any good | 10:04 |
| fijal | the thing is you do ABORT_TOO_LONG | 10:04 |
| fijal | and then you do that again | 10:04 |
| fijal | and again and again | 10:04 |
| fijal | so you end up tracing all the time, for no good reason | 10:05 |
| fijal | we need something like "it's ok, just don't inline anything in this piece of code" | 10:05 |
| hakanardo | so the issue is that you inline too much? | 10:06 |
| hakanardo | ie you call the same function several times during a single iteration and you want a call instead of inlineing it? | 10:07 |
| fijal | for example | 10:09 |
| hakanardo | how about this then, if you hit the limit, scan the trace for some sensible part to comple | 10:12 |
| hakanardo | for example the longest inlined function | 10:12 |
| hakanardo | and compile that part | 10:13 |
| hakanardo | next time you trace it should generate call_assempler for that part, right? | 10:13 |
| fijal | what happens now is you mark the longest function as "dont inline" | 10:13 |
| fijal | and you continue | 10:13 |
| fijal | that however does not work too well | 10:13 |
| fijal | because you need tons and tons of tracing before the situation stabilizes | 10:14 |
| hakanardo | I see | 10:14 |
| fijal | like *tons* | 10:14 |
| fijal | but also | 10:15 |
| fijal | you might never finish | 10:15 |
| fijal | because you mark the longest function | 10:15 |
| fijal | and then you do from start from the longest function | 10:15 |
| fijal | and it might still be the longest function | 10:15 |
| lahwran | who originally wrote the sandboxing code? | 10:17 |
| fijal | lahwran: armin | 10:17 |
| lahwran | darn, not here | 10:17 |
| lahwran | so I can't pester them about why marshal was used :| | 10:18 |
| fijal | as opposed to? | 10:18 |
| fijal | I can probably answer few questions | 10:18 |
| lahwran | as opposed to any other data structure - could be json, even | 10:18 |
| fijal | json does not work because it does not preserve types well | 10:19 |
| lahwran | ah | 10:19 |
| fijal | besides, it's not really a good layer | 10:19 |
| fijal | you need something binary | 10:19 |
| lahwran | well, I suppose that's fair | 10:22 |
| lahwran | my worry is that marshal is specifically marked as untrustworthy in the standard library documentation | 10:23 |
| fijal | lahwran: you messed up marshal with pickle | 10:24 |
| fijal | didn't you>? | 10:24 |
| fijal | hakanardo: so, what about loops that have no label? | 10:24 |
| lahwran | pickle is bad too, but marshal has a big warning that says something about untrusted marshals | 10:24 |
| lahwran | http://docs.python.org/library/marshal.html | 10:25 |
| fijal | ok | 10:25 |
| fijal | so our marshal does not have this problem | 10:25 |
| lahwran | alright | 10:25 |
| fijal | note that in any way it doesn't use builtin marshal | 10:26 |
| fijal | it uses marshal written in pure python | 10:26 |
| lahwran | okay then | 10:26 |
| fijal | hakanardo: they have no counters | 10:26 |
| fijal | hakanardo: yet, they're run | 10:26 |
| hakanardo | the target of the jump op is now a label | 10:28 |
| hakanardo | so you cant realy form loops without labels... | 10:28 |
| hakanardo | but I guess you have a trace starting at the interpreter and ending with a finnish? | 10:29 |
| hakanardo | for bridges (ie traces starting at a guard) we add a counter at the begining even if there is no label | 10:30 |
| hakanardo | maybe we should do so for all traces? | 10:30 |
| hakanardo | that way you'll get a counter for the part of the trace that is before the first label as well | 10:31 |
| fijal | the part before the first label is usually very boring | 10:34 |
| fijal | unless you start there and end with a finish | 10:34 |
| fijal | an example is a short entry bridge that ends with a finish | 10:35 |
| fijal | that has a bridge going out of there | 10:35 |
| fijal | now bridge has a counter, loop does not | 10:35 |
| fijal | also note that it does not have to be "from the interpreter" | 10:35 |
| fijal | it can also be call_assembler | 10:35 |
| fijal | hakanardo: am I making any sense? | 10:40 |
| hakanardo | yes I see | 10:40 |
| hakanardo | so how about we add a counter at the beginning of all traces containing no labels? | 10:41 |
| fijal | yes | 10:44 |
| fijal | then we have to be a bit more careful | 10:44 |
| fijal | because showing those operations not always makes sense | 10:44 |
| fijal | like in case there is no bridge | 10:44 |
| fijal | also, while we're at it | 10:44 |
| fijal | why there is greenkey displayed at "loop xxx has address yyy" | 10:45 |
| fijal | but not at the beginning of loop ops? | 10:45 |
| fijal | this way we can get the greenkey even if there is no debug_merge_point | 10:45 |
| kenaan | 12fijal default 11e105505cc286 15/pypy/jit/backend/x86/assembler.py: append debugging code at the beginning even if for loops | 10:47 |
| fijal | Alex_Gaynor: ping | 10:47 |
| fijal | hakanardo: ^^^? | 10:48 |
| hakanardo | sorry, I dont get it, are you missing debug_merge_points? | 10:49 |
| fijal | there are loops that have no debug_merge_points | 10:49 |
| fijal | so how do I determine what sort of greenkey it is? | 10:49 |
| hakanardo | dunno... | 10:49 |
| hakanardo | there is TargetToken.targeting_jitcell_token | 10:50 |
| hakanardo | which refers to the jitcell, can you get the greenken from there? | 10:51 |
| hakanardo | maybe not | 10:51 |
| fijal | there is loopname being passed to assemble_loop | 10:51 |
| fijal | surely you can pass it to logging as well | 10:51 |
| fijal | no? | 10:51 |
| hakanardo | I have a bit no clue, but I suppose so... | 10:54 |
| fijal | hakanardo: can we remove if False: in compile.py? | 10:54 |
| hakanardo | assemble_loop logs the loopname, but assemble_bridge does not, is that the issue? | 10:54 |
| fijal | no | 10:55 |
| fijal | it's that assemble_loop logs the loopname | 10:55 |
| fijal | but the part that logs IR does not | 10:55 |
| fijal | which means that you have to fish loopname from somewhere else | 10:55 |
| hakanardo | IR? | 10:55 |
| fijal | intermediate representation | 10:55 |
| fijal | log-opt | 10:55 |
| fijal | hakanardo: can I remove debugging leftovers from compile.py? | 10:56 |
| fijal | they're inside if False | 10:56 |
| fijal | and contain assert False | 10:56 |
| hakanardo | fijal: sure, please do | 10:56 |
| hakanardo | I can see no issue with passing the loopname to log_loop in send_loop_to_backend | 10:58 |
| fijal | yes | 11:01 |
| Action: fijal does it | 11:01 | |
| kenaan | 12fijal default 118417bf8c3a59 15/pypy/tool/jitlogparser/: more small fixes | 11:02 |
| kenaan | 12fijal default 11d69a1af57f0c 15/pypy/jit/metainterp/compile.py: remove some nonsense | 11:02 |
| kenaan | 12fijal default 112971cd3e5323 15/pypy/jit/metainterp/: pass the loop name around | 11:02 |
| hakanardo | re e105505cc286: we need to fix _register_counter as well | 11:02 |
| hakanardo | there is now 3 cases, bridge, loop, and labels | 11:03 |
| hakanardo | so I guess struct.bridge needs to be a 3 value enum instead of a boolean | 11:03 |
| fijal | right | 11:05 |
| fijal | hakanardo: do you feel like fixing? | 11:05 |
| fijal | and maybe writing a test? | 11:05 |
| fijal | ;-) | 11:05 |
| hakanardo | ok | 11:05 |
| hakanardo | but I need lunch first | 11:06 |
| fijal | that is fine :) | 11:06 |
| kenaan | 12fijal default 1117fd3576a153 15/pypy/jit/metainterp/test/test_compile.py: fix the test | 11:06 |
| lahwran | from pypy.tool.lib_pypy import import_from_lib_pypy; marshal = import_from_lib_pypy('marshal') | 11:07 |
| lahwran | heavens, why | 11:07 |
| lahwran | that import is taking approximately 30% of pypy_interact's time :| | 11:07 |
| azanella (~azanella@189.6.80.207) joined #pypy. | 11:08 | |
| fijal | lahwran: precisely because marshal from stdlib python can't be trusted | 11:10 |
| fijal | why are you spawning pypy_interact all the tmie | 11:11 |
| fijal | ? | 11:11 |
| lahwran | once per request | 11:11 |
| lahwran | should I not be? | 11:11 |
| lahwran | nedbat wanted to as well | 11:11 |
| fijal | ok | 11:12 |
| fijal | well, I don't know, maybe you can optimize it by keeping it in memory | 11:12 |
| fijal | so which part is taking how much time? | 11:12 |
| lahwran | hm, perhaps | 11:13 |
| lahwran | I honestly didn't even think of keeping pypy_interact in memory but starting new subprocesses | 11:13 |
| lahwran | not sure how well twisted would like that | 11:13 |
| fijal | twisted like such stuff I believe | 11:14 |
| kenaan | 12fijal default 1159d04a0ce4a7 15/pypy/module/micronumpy/: provide get_printable_location for numpy | 11:14 |
| fijal | lahwran: anyway, I can probably help with import times a bti | 11:14 |
| Action: fijal is on the rage today | 11:14 | |
| lahwran | well, the issue seems to be focused mainly in version.py | 11:14 |
| pedronis (~pedronis@73-53.195-178.cust.bluewin.ch) left irc: Ping timeout: 244 seconds | 11:14 | |
| lahwran | would you like a copy of the cProfile output? | 11:15 |
| fijal | paste it somewhere | 11:15 |
| lahwran | pypy/mobule/sys/version.py specifically | 11:15 |
| fijal | oh | 11:15 |
| kenaan | 12fijal default 1113448846544c 15/pypy/jit/metainterp/test/test_logger.py: fix another test | 11:15 |
| fijal | why does it import pypy/module? | 11:15 |
| lahwran | I think pypy/tool/lib_pypy is importing that | 11:16 |
| lahwran | although | 11:16 |
| lahwran | no, yeah, that's the one | 11:16 |
| lahwran | from pypy.module.sys.version import CPYTHON_VERSION | 11:16 |
| pedronis (~pedronis@73-53.195-178.cust.bluewin.ch) joined #pypy. | 11:19 | |
| fijal | lahwran: yeah, fixing | 11:20 |
| lahwran | it looks to me like it only needs LIB_PYPY, not any of the other LIB_ variables | 11:21 |
| kenaan | 12fijal default 11ecf82a6d3959 15/pypy/translator/sandbox/: remove some unnecessary dependencies | 11:24 |
| lahwran | oh? | 11:25 |
| lahwran | thought we were looking at lib_pypy.py | 11:25 |
| lahwran | err, crap, I'm no good with hg. how do I merge with the default branch? I'm currently on nedbat-sandbox | 11:27 |
| fijal | hg merge default | 11:28 |
| fijal | wasn't nedbat sandbox merged anyway? | 11:28 |
| fijal | yes, it was | 11:28 |
| fijal | you can just do hg up default | 11:28 |
| lahwran | ah | 11:31 |
| lahwran | drat, pypy is huge | 11:34 |
| lahwran | so many things I don't know how to use :| | 11:34 |
| fijal | like what? | 11:35 |
| lahwran | py.log | 11:36 |
| lahwran | "Warning: cannot find your CPU L2 cache size in /proc/cpuinfo" | 11:37 |
| fijal | I don't think that's interesting any more | 11:42 |
| fijal | we decided not to care | 11:42 |
| lahwran | eh? | 11:43 |
| fijal | lahwran: you can rebuild your sandbox | 11:43 |
| lahwran | do I have to? :( | 11:43 |
| lahwran | that takes hours | 11:43 |
| fijal | you certainly don't | 11:44 |
| fijal | and it certainly does not take hours | 11:44 |
| fijal | 20min | 11:44 |
| fijal | ? | 11:44 |
| fijal | maybe 15 | 11:44 |
| kenaan | 12fijal default 11b67ec3f6c00f 15/pypy/jit/backend/x86/: Fix assembler to differentiate between 3 kinds of counters | 11:44 |
| lahwran | uhhh, what kind of relativistic timeframe do you live in? | 11:45 |
| dgl (~dgl@109.86.165.231) joined #pypy. | 11:45 | |
| lahwran | takes four hours for me | 11:45 |
| fijal | lahwran: me? | 11:45 |
| dgl (~dgl@109.86.165.231) left irc: Client Quit | 11:45 | |
| fijal | lahwran: wow, what OS/RAM/CPU you have? | 11:45 |
| ronny | fijal: building pypy takes 3-4 hours here | 11:45 |
| lahwran | p4ht/3gb | 11:45 |
| lahwran | linux2, ubuntu 10.10 | 11:45 |
| fijal | lahwran: 32bit version using pypy should build in ~30min | 11:45 |
| fijal | python2.7 is ~30% slower | 11:46 |
| fijal | python2.6 is slow as hell | 11:46 |
| lahwran | oh | 11:46 |
| lahwran | that would be it. I'm on python2.6 for default cpython installation | 11:46 |
| fijal | then stop :) | 11:46 |
| fijal | use pypy :) | 11:46 |
| lahwran | k | 11:46 |
| fijal | anyway | 11:46 |
| fijal | you only need to rebuild if you want the warning to go away ;-) | 11:46 |
| lahwran | are there any other "freak warnings" like that? | 11:47 |
| lahwran | ie, can I count on stdout/stderr being clean | 11:48 |
| fijal | this is not a freak warning | 11:48 |
| lahwran | oh? | 11:48 |
| fijal | this is actually important, or rather was | 11:48 |
| fijal | it's for picking up the correct size of GC structures depending on your cache | 11:49 |
| fijal | but it seems that modern architectures don't care that much | 11:49 |
| lahwran | ah | 11:50 |
| kenaan | 12fijal default 116d97be67953c 15/pypy/jit/backend/x86/test/test_runner.py: fix the test | 11:53 |
| fijal | lahwran: we seriously don't give users freak warnings | 11:53 |
| lahwran | alright | 11:53 |
| fijal | it's less of an issue for sandbox | 11:53 |
| lahwran | so that's the one "freak" warning I can expect? | 11:54 |
| lahwran | by "freak" I mean "out of the ordinary" | 11:54 |
| hakanardo | fijal: so you fixed it yourself? | 11:55 |
| tellone (~tellone@81-232-82-223-no32.tbcn.telia.com) joined #pypy. | 11:57 | |
| hakanardo | here is my version: http://paste.pocoo.org/show/526376/ | 11:57 |
| lahwran | erm, did the required arguments change to translate.py? https://gist.github.com/60f64f5e11f27565afc3 | 12:00 |
| lahwran | I don't remember specifying -Oanything last time I translated | 12:00 |
| nickik (~nick@2001:67c:20a1:1018:226:9eff:feef:8369) joined #pypy. | 12:08 | |
| nedbat (~nedbat@python/psf/nedbat) joined #pypy. | 12:08 | |
| lahwran | nedbat: I ran cProfile on pypy_interact, seems that it was importing pypy.module.sys.version indirectly, which took ... quite a long time | 12:14 |
| fijal | hakanardo: yeah, I need a test probably | 12:14 |
| nedbat | lahwran: I don't know what pypy.module.sys.version is. | 12:15 |
| lahwran | neither do I, I just know it took forever to import :p | 12:15 |
| fijal | lahwran: I removed the import, didn't i? | 12:15 |
| lahwran | yes | 12:15 |
| mat^2 (mathias@87.55.0.198) joined #pypy. | 12:15 | |
| lahwran | emphasis on "was" :P | 12:15 |
| nedbat | lahwran: where is the import? | 12:15 |
| lahwran | nedbat: fijal already fixed it | 12:15 |
| lahwran | I was getting to that :P | 12:16 |
| fijal | lahwran: -O2 or -Ojit | 12:16 |
| fijal | depending if you want a jit or not | 12:16 |
| nedbat | changeset? | 12:16 |
| nedbat | i'd like to understand what happened. | 12:16 |
| anish_ (anish@nat/redhat/x-apqmwgcutpqsgfwl) left irc: Quit: Leaving | 12:16 | |
| lahwran | ecf82a6d3959 | 12:16 |
| fijal | nedbat: nothing interesting really | 12:16 |
| fijal | just making sure that imports don't pull the entire pypy | 12:17 |
| nedbat | fijal: right. I have a few to merge also. | 12:20 |
| fijal | cool | 12:20 |
| squiddy (~squiddy@46.128.142.118.dynamic.cablesurf.de) joined #pypy. | 12:22 | |
| fijal | hakanardo: either way, thanks for helping | 12:23 |
| lahwran | heavens, even run in pypy translate.py takes ages | 12:23 |
| fijal | lahwran: as I said ~20min for the sandbox | 12:23 |
| fijal | jitless probably less | 12:23 |
| lahwran | does jit cause any kind of performance degradation? | 12:25 |
| lahwran | I know it's a net gain, but are there any parts of it that are a loss? | 12:25 |
| fijal | translation is longer | 12:27 |
| fijal | but also, in theory, the security is slightly lower | 12:27 |
| ivan | and uses more memory, no? | 12:27 |
| lahwran | fijal: ho? | 12:28 |
| lahwran | oh* | 12:28 |
| lahwran | how's that work? | 12:28 |
| fijal | ivan: yes | 12:29 |
| fijal | lahwran: how does what work? | 12:29 |
| lahwran | the security is slightly lower in what way | 12:29 |
| kenaan | 12ned nedbat-sandbox-2 117aa1376fb3bc 15/: Merged d9b372cf25b0 to nedbat-sandbox | 12:30 |
| derdon (~derdon@pD9E1D2A3.dip.t-dialin.net) joined #pypy. | 12:30 | |
| fijal | say if we have a bug in handling out-of-memory conditions in the JIT | 12:30 |
| fijal | that doesn't respect return value of malloc (we had this before) | 12:31 |
| fijal | you might lead to a potential segfault | 12:31 |
| lahwran | ah | 12:31 |
| lahwran | so it'd be the kinda thing where someone would /really/ have to be looking | 12:31 |
| fijal | well, yes | 12:31 |
| lahwran | to the point that pypy-sandbox isn't even the optimal point of entry | 12:31 |
| lahwran | :P | 12:31 |
| fijal | it's just that the default sandbox is *really* secure | 12:31 |
| lahwran | k, so -O2 is jitless? | 12:32 |
| fijal | the jitted one is slightly less so | 12:32 |
| fijal | yes, -O2 is jitless | 12:32 |
| lahwran | also, this seems to have happened while compiling: https://gist.github.com/c283493cb1c711c3d42c | 12:32 |
| fijal | simply because bugs in jit more often can cause segfault | 12:32 |
| fijal | lahwran: install libffi-dev | 12:32 |
| lahwran | is that a dependency for jit? | 12:33 |
| fijal | no idea why it did not check at the very beginning :( | 12:33 |
| fijal | apparently :/ | 12:33 |
| lahwran | nah, I'll just switch to -opt=2 | 12:33 |
| fijal | makes sense if you don't care about performance | 12:34 |
| fijal | note that for the sandbox to make sense being jitted, the programs would have to consume >0.5s CPU time | 12:34 |
| lahwran | ah | 12:34 |
| lahwran | doubtful that will happen except when someone's trying to break it | 12:34 |
| fijal | so the JIT is not buying you anything | 12:35 |
| kenaan | 12ned nedbat-sandbox-2 11808b12f6b195 15/: Merge tip to nedbat-sandbox-2 | 12:39 |
| tellone (~tellone@81-232-82-223-no32.tbcn.telia.com) left irc: Ping timeout: 240 seconds | 12:40 | |
| fijal | crap, compiled the wrong branch | 12:41 |
| nedbat | fijal: can I merge my logging changes in the sandbox to default? | 12:42 |
| fijal | nedbat: you mean nedbat-sandbox-2? | 12:42 |
| nedbat | yes | 12:42 |
| fijal | can I have a quick look? | 12:42 |
| nedbat | sure, no prob. | 12:42 |
| nedbat | I should re-build everything after my (uninteresting) merge anyway | 12:42 |
| fijal | nedbat: LGTM | 12:43 |
| fijal | maybe debug should be false by default | 12:44 |
| jnoller (~jnoller@vpn.nasuni.com) joined #pypy. | 12:44 | |
| nedbat | fijal: yeah, I left it true since that was the "default" before. But you're probably right. | 12:44 |
| Da_Blitz (~Da_Blitz@203.56.250.63) left irc: Ping timeout: 244 seconds | 12:44 | |
| fijal | nedbat: you're the one who can make an informed decision | 12:45 |
| fijal | jnoller: hi jesse | 12:45 |
| jnoller | morning | 12:45 |
| nedbat | fijal: "informed decision": it's about what sandbox users expect. It seems like most are annoyed by the logging instead of pleased. | 12:47 |
| fijal | yes | 12:47 |
| kenaan | 12fijal default 11a8481f7a34ed 15/pypy/module/micronumpy/: a neat debugging feature | 12:48 |
| Da_Blitz (~Da_Blitz@203.56.250.63) joined #pypy. | 13:02 | |
| squiddy (~squiddy@46.128.142.118.dynamic.cablesurf.de) left irc: Remote host closed the connection | 13:08 | |
| Rhy0lite (dje@nat/ibm/x-bivwrfbkvkqxighf) joined #pypy. | 13:21 | |
| fijal (fijal@196-210-199-8.dynamic.isadsl.co.za) left #pypy ("Leaving"). | 13:21 | |
| fijal (~fijal@196-210-199-8.dynamic.isadsl.co.za) joined #pypy. | 13:21 | |
| fijal | Rhy0lite: hi | 13:21 |
| Rhy0lite | hi | 13:21 |
| Rhy0lite | how goes it? | 13:21 |
| Rhy0lite | jitviewer working again? | 13:21 |
| fijal | almost :) | 13:23 |
| fijal | doing final fixes | 13:23 |
| lahwran | ffffff | 13:27 |
| lahwran | it still said 'Warning: cannot find your CPU L2 cache size in /proc/cpuinfo' | 13:27 |
| lahwran | guess I'll make my handling code ignore that then :| | 13:27 |
| fijal | lahwran: ? | 13:28 |
| fijal | lahwran: what did you recompile? | 13:28 |
| fijal | the pypy-c-sandbox? | 13:28 |
| lahwran | fijal: the newly translated pypy-c | 13:28 |
| lahwran | yeah | 13:28 |
| lahwran | (sidenote, it doesn't seem to produce pypy-c-sandbox, only pypy-c | 13:28 |
| fijal | UGH | 13:29 |
| fijal | yes, different GC :/ | 13:29 |
| fijal | sorry forgot to update stuff | 13:30 |
| lahwran | the length of the string is probably stored in the binary, isn't it | 13:30 |
| lahwran | uh | 13:30 |
| lahwran | nevermind, that was a really horrible idea, shouldn't have even brought it up | 13:30 |
| lahwran | relatedly, I'm gonna go sleep. o/ | 13:30 |
| fijal | lahwran: ok, I'll try to fix it | 13:30 |
| fijal | but I have 17 things to fix on my mind right now | 13:30 |
| fijal | and 2 that I would actually like to work on | 13:31 |
| lahwran | well, fix the important ones first | 13:31 |
| lahwran | this is easily workaroundable | 13:31 |
| CIA-53 | 03fijal 07roundup * 10#673/Linux L2 cache size: We should remove it from other GCs as well. * 14https://bugs.pypy.org/issue673 | 13:31 |
| tellone (~tellone@81-232-82-223-no32.tbcn.telia.com) joined #pypy. | 13:42 | |
| nedbat | fijal: My changes got rid of the need to "import py", and your change uses "py.path.local"... | 13:48 |
| fijal | change it to use os.path then | 13:49 |
| fijal | it's just annoying | 13:49 |
| nedbat | it's a little more complicated than that: py.path.local(pypy.__file__).join('..', '..', 'lib_pypy', 'marshal.py').pyimport() | 13:49 |
| nedbat | .pyimport is not in os.path | 13:50 |
| nedbat | fijal: also, I worry about the comment explaining why stdlib marshal isn't used. | 13:51 |
| fijal | it adds stuff to sys.path, imports it and removes I believe | 13:51 |
| fijal | or execfiles it | 13:51 |
| fijal | I dunno | 13:51 |
| fijal | well | 13:51 |
| fijal | stdlib marshal has a bug fat warning stating "don't use it to unmarshal untrusted data" | 13:52 |
| nedbat | right. | 13:52 |
| nedbat | fijal: but here we're unmarshalling data we marshalled. | 13:53 |
| tellone (~tellone@81-232-82-223-no32.tbcn.telia.com) left irc: Ping timeout: 244 seconds | 13:55 | |
| fijal | so? | 13:56 |
| fijal | well ok | 13:56 |
| fijal | I see the point | 13:56 |
| fijal | ah no | 13:58 |
| fijal | wrong | 13:58 |
| fijal | the question is how easy it is to print arbitrary data to the output? | 13:58 |
| nedbat | fijal: the output of the sandbox? | 14:00 |
| fijal | yes | 14:00 |
| nedbat | fijal: the python run in the sandbox doesn't print marshal data. It will print strings, which are then marshalled. I guess the question is: if I give you a string, and then marshal it, can I somehow jump outside the string to make bad marshal data? I don't think so. | 14:01 |
| fijal | I think you have to argue with armin, but I tend to agree | 14:01 |
| nedbat | ok, I'll look into it, and talk to armin | 14:03 |
| davidpk (~davidpk@5e09151b.bb.sky.com) joined #pypy. | 14:04 | |
| derdon (~derdon@pD9E1D2A3.dip.t-dialin.net) left irc: Remote host closed the connection | 14:04 | |
| lahwran | better to just include the pypy marshal.py anyway | 14:08 |
| voidspace (~anonymous@87-194-212-65.bethere.co.uk) joined #pypy. | 14:11 | |
| voidspace (~anonymous@87-194-212-65.bethere.co.uk) left irc: Changing host | 14:11 | |
| voidspace (~anonymous@python/psf/voidspace) joined #pypy. | 14:11 | |
| kenaan | 12fijal jitviewer 115f18887dce76 15/log.pypylog: regen log | 14:11 |
| kenaan | 12fijal default 11974244d55fe2 15/pypy/tool/jitlogparser/: adjust to new situation | 14:11 |
| fijal | nedbat: how's sandbox working for you btw? | 14:17 |
| nedbat | fijal: it's good, but i haven't stressed it much. Been working on other aspects of the system. | 14:17 |
| JaRoel (~jaroel|4d@office.fourdigits.nl) joined #pypy. | 14:26 | |
| espes (espes@2001:470:1f05:ca1::) left irc: Read error: Connection timed out | 14:27 | |
| fijal | Alex_Gaynor: geeez | 14:28 |
| espes (espes@2001:470:1f05:ca1::) joined #pypy. | 14:28 | |
| kenaan | 12fijal default 116406dbf9a60e 15/pypy/tool/jitlogparser/: improvements | 14:28 |
| JaRoel|4d (~jaroel|4d@office.fourdigits.nl) left irc: Ping timeout: 276 seconds | 14:28 | |
| JaRoel|4d (~jaroel|4d@office.fourdigits.nl) joined #pypy. | 14:30 | |
| JaRoel (~jaroel|4d@office.fourdigits.nl) left irc: Ping timeout: 248 seconds | 14:31 | |
| nedbat | lahwran: I'm trying to minimize the dependencies, and it's good to reason about these things. | 14:33 |
| kenaan | 12hakanardo jit-improve-nested-loops 114481b4f255f7 15/pypy/: hg merge c8ddbb442986 | 14:38 |
| kenaan | 12fijal default 11ff4589dda2b1 15/pypy/: add some info "we're in re" or "we're in numpy" | 14:39 |
| _aleksi (~aleksi@85.235.191.82) joined #pypy. | 14:40 | |
| PiotrSikora (~none@nginx/adept/piotrsikora) left irc: Excess Flood | 14:40 | |
| PiotrSikora (~none@nginx/adept/piotrsikora) joined #pypy. | 14:41 | |
| aleksi (~aleksi@85.235.191.82) left irc: Ping timeout: 244 seconds | 14:43 | |
| asmeurer (~asmeurer@c-174-56-21-245.hsd1.nm.comcast.net) joined #pypy. | 14:47 | |
| bbot2 | Started: 15http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-64/builds/654 [12hakanardo, jit-improve-nested-loops] | 14:49 |
| reiner (~reiner@46.128.136.223.dynamic.cablesurf.de) joined #pypy. | 14:51 | |
| reiner (~reiner@46.128.136.223.dynamic.cablesurf.de) left irc: Remote host closed the connection | 14:51 | |
| reiner (~reiner@46.128.136.223.dynamic.cablesurf.de) joined #pypy. | 14:51 | |
| Nick change: reiner -> squiddy | 14:51 | |
| Vorpal (~AnMaster@unaffiliated/anmaster) joined #pypy. | 14:52 | |
| fijal | Alex_Gaynor: ping | 14:57 |
| bfirsh (u1308@gateway/web/irccloud.com/x-pdonzebgljlrwclh) left irc: Quit: Connection closed for inactivity | 15:00 | |
| tellone (~tellone@81-232-82-223-no32.tbcn.telia.com) joined #pypy. | 15:02 | |
| _aleksi (~aleksi@85.235.191.82) left irc: Remote host closed the connection | 15:13 | |
| aleksi (~aleksi@85.235.191.82) joined #pypy. | 15:14 | |
| etrepum (~bob@75-101-96-144.dsl.static.sonic.net) left irc: Read error: Connection reset by peer | 15:20 | |
| gehho2 (~gehho2@ZJ040192.ppp.dion.ne.jp) left irc: Quit: Leaving... | 15:31 | |
| Alex_Gaynor | fijal: pong | 15:34 |
| Kaskuka (~John@osbk-4db177c4.pool.mediaWays.net) left irc: Ping timeout: 240 seconds | 15:40 | |
| Kaskuka (~John@osbk-4db1432e.pool.mediaWays.net) joined #pypy. | 15:40 | |
| kenaan | 12alex_gaynor default 11653d45fce4df 15/pypy/module/micronumpy/strides.py: this can be unrolled sometimes | 15:45 |
| derdon (~derdon@pD9E1D53F.dip.t-dialin.net) joined #pypy. | 15:45 | |
| bbot2 | 3Success: 15http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-64/builds/654 [12hakanardo, jit-improve-nested-loops] | 15:50 |
| antocuni (~antocuni@host117-71-dynamic.58-82-r.retail.telecomitalia.it) left irc: Ping timeout: 252 seconds | 15:54 | |
| aleksi (~aleksi@85.235.191.82) left irc: Remote host closed the connection | 15:56 | |
| kenaan | 12alex_gaynor default 11c2d42bf471da 15/pypy/jit/metainterp/: A guard can't invalidate the heap cache in the metainterp. | 16:09 |
| jyp (~interrupt@175.197.245.105) joined #pypy. | 16:11 | |
| JaRoel|4d (~jaroel|4d@office.fourdigits.nl) left irc: Remote host closed the connection | 16:11 | |
| arigato (~arigo@xdsl-188-155-166-12.adslplus.ch) joined #pypy. | 16:12 | |
| arigato | hi | 16:13 |
| arigato | fijal: ok to publish the sprint announcement? (sorry, you're the only one more-or-less on-line nowadays) | 16:14 |
| jterrace (~jterrace@aegis.CS.Princeton.EDU) joined #pypy. | 16:16 | |
| etrepum (~bob@75-101-96-144.dsl.static.sonic.net) joined #pypy. | 16:19 | |
| fijal | arigato: hehe :) | 16:24 |
| fijal | arigato: I can have a look | 16:24 |
| arigato | http://morepypy.blogspot.com/p/global-interpreter-lock-or-how-to-kill.html | 16:24 |
| arigato | that's the link for now (ignore the bogus name in the link) | 16:24 |
| fijal | yes? | 16:24 |
| arigato | that's what I plan to publish | 16:25 |
| arigato | if it looks ok for you | 16:25 |
| fijal | arigato: do you want me to add extra stuff, or not really? | 16:25 |
| arigato | sure, if you have ideas | 16:25 |
| fijal | otherwise looks good | 16:25 |
| fijal | ARM buildbot | 16:25 |
| fijal | for example | 16:25 |
| arigato | you don't *have* to add extra stuff | 16:25 |
| Arfrever (~Arfrever@apache/committer/Arfrever) joined #pypy. | 16:26 | |
| fijal | ok :) | 16:26 |
| fijal | then looks good | 16:26 |
| fijal | Alex_Gaynor: I'm doing experiments | 16:26 |
| arigato | yes, that's part of "integrate tests for ARM" | 16:26 |
| fijal | I can't quite get why gcc is faster, but well, whatever | 16:26 |
| Alex_Gaynor | fijal: I'm about to start working on a mockup. | 16:26 |
| fijal | cool | 16:26 |
| Action: arigato publishes | 16:27 | |
| Action: Alex_Gaynor should probably start with pen and paper. | 16:27 | |
| fijal | Alex_Gaynor: probably :) | 16:27 |
| fijal | Alex_Gaynor: anyway, I can now write a blog post with various algorithms and version, explaining where we are and where we are going | 16:27 |
| fijal | regarding laplace.py | 16:27 |
| Alex_Gaynor | fijal: sounds good | 16:28 |
| fijal | there are various questions which I don't quite understand | 16:28 |
| fijal | but well | 16:28 |
| fijal | arigato: I did some work on jitviewer, but there are few questions regarding "what do you want to see" | 16:28 |
| Alex_Gaynor | fijal: I've been playing a bit with making the JIT do better on the Python side of x[:,:] = y | 16:28 |
| fijal | and? | 16:29 |
| Alex_Gaynor | fijal: I haven't been benchmarking evne, just reading traces | 16:29 |
| fijal | ok | 16:29 |
| Alex_Gaynor | fijal: re-translating with the heapcache opt I just pushed | 16:29 |
| fijal | Alex_Gaynor: I'm a bit skeptical about all this unrolling | 16:30 |
| fijal | maybe we should just be happy with interpreter-level speed | 16:30 |
| fijal | but whatever | 16:30 |
| Alex_Gaynor | I'm going to find breakfast and sketch | 16:31 |
| Rhy0lite | fijal: what's still confusing about GCC? | 16:31 |
| Rhy0lite | I haven't seen the latest code from pypy | 16:31 |
| fijal | Rhy0lite: why our memcopy is so slow | 16:32 |
| fijal | Alex_Gaynor: this does not quite cut, especially that we don't always have it jitted | 16:32 |
| Rhy0lite | fijal: not laplace? | 16:32 |
| fijal | Rhy0lite: I'm shredding it a bit to pieces | 16:32 |
| Rhy0lite | okay | 16:32 |
| fijal | but anyway, I guess I'm ready to just post it to the blog | 16:33 |
| Rhy0lite | what is the current pypy gap? | 16:33 |
| fijal | it depends :) | 16:33 |
| fijal | the same sort of style is almost 2x faster | 16:33 |
| fijal | er, slower | 16:33 |
| Rhy0lite | okay, then it likely still is memory accesses | 16:33 |
| fijal | but there is different cost associated with the equivalent operations | 16:34 |
| fijal | and I don't quite understand why | 16:34 |
| fijal | arigato: can we discuss this briefly? | 16:34 |
| arigato | a sec | 16:35 |
| kenaan | 12arigo extradoc 11e88672794b8f 15/sprintinfo/leysin-winter-2012/announcement.txt: Fix the description | 16:35 |
| fijal | Alex_Gaynor: http://www.reddit.com/r/Python/comments/nr8g8/python_3_wall_of_shame_updates/c3bj5fb | 16:36 |
| arigato | fijal: ok | 16:39 |
| fijal | arigato: so right now we (usually) get 3 pieces of code | 16:39 |
| fijal | before the first label, from first label and from second label | 16:40 |
| fijal | how would you like this presented | 16:40 |
| fijal | ? | 16:40 |
| arigato | good question | 16:40 |
| fijal | note that before-the-first-label part is usually boring | 16:41 |
| fijal | but sometimes not at all | 16:41 |
| fijal | like if we have a from-start trace that ends with a finish | 16:41 |
| arigato | do from-start traces have labels? | 16:41 |
| fijal | no | 16:42 |
| arigato | I see | 16:42 |
| arigato | interesting question | 16:42 |
| fijal | right now at least the list and numbers of hits are correct | 16:42 |
| fijal | loading of source code does not quite work | 16:42 |
| arigato | number of hits is counted where? | 16:42 |
| arigato | at the start of the trace, after every label, and at the start of every bridge? | 16:43 |
| fijal | yes | 16:43 |
| arigato | ok | 16:43 |
| fijal | all of the above | 16:43 |
| arigato | good | 16:43 |
| fijal | took few iterations :) | 16:43 |
| arigato | :-) | 16:43 |
| fijal | the trace world is completely different now - no wonder jitviewer stopped working | 16:44 |
| arigato | yes | 16:44 |
| fijal | so indeed, what would you like to see | 16:44 |
| fijal | some of the code for example have no longer any obvious place in the python source code to correspond do | 16:45 |
| arigato | maybe it should display one line per loop (like now), but if necessary with two links: one link that goes to the start of the loop, and another link that goes to the loopy part only | 16:45 |
| fijal | can I assume from start loops have no labels? | 16:45 |
| fijal | so a loopy thing is with a trace | 16:45 |
| fijal | er | 16:45 |
| arigato | no | 16:46 |
| fijal | a loopy thing is with a label | 16:46 |
| fijal | ok | 16:46 |
| fijal | so what assumptions are there? | 16:46 |
| arigato | "a loopy thing" would mean "something where the final jump goes back to a label in the same loop | 16:46 |
| fijal | ok | 16:46 |
| arigato | (usually the last one, that's good enough) | 16:46 |
| fijal | and from start traces? | 16:47 |
| fijal | because now we can nicely distinguish them | 16:47 |
| fijal | (maybe) | 16:47 |
| arigato | ah | 16:47 |
| arigato | "from start" traces can end with a loop, and *bridges* can too | 16:47 |
| fijal | with a loop? | 16:48 |
| arigato | with a "loopy thing" as defined above | 16:48 |
| fijal | what do you mean? | 16:48 |
| arigato | a bridge can contain a label and end in a jump back to this label | 16:48 |
| fijal | ah, so a bridge can have a label and a jump to that label? | 16:48 |
| fijal | for example? | 16:48 |
| arigato | yes | 16:48 |
| fijal | oh wow | 16:48 |
| arigato | yes :-) | 16:48 |
| fijal | that's new :) | 16:48 |
| fijal | the current model does not fit at all | 16:48 |
| arigato | indeed, but that's also simpler | 16:48 |
| arigato | from the point of view of the front-end | 16:49 |
| G2P (~G2P@fw-asn1.ornis.com) left irc: Quit: Leaving. | 16:49 | |
| arigato | :-/ | 16:49 |
| fijal | it's ok | 16:49 |
| fijal | complexity moves to better places | 16:49 |
| arigato | maybe you should have two lists of stuff to display | 16:49 |
| arigato | one that shows the "loopy things" | 16:50 |
| arigato | and the other that shows the "loops" in the sense of the front-end | 16:50 |
| arigato | I think it was renamed "procedures" | 16:50 |
| arigato | yes | 16:50 |
| arigato | now a "procedure" is the new name for what used to be a "loop" | 16:51 |
| arigato | you have procedures and bridges | 16:51 |
| kkris1 (~kris@80-123-45-103.adsl.highway.telekom.at) left irc: Ping timeout: 240 seconds | 16:51 | |
| Alex_Gaynor | fijal: pypy is a visualization project that builds VMs to have cool data | 16:57 |
| Alex_Gaynor | fijal: (I have a sketch now) | 16:57 |
| dracman (~draco@31-17-70-40-dynip.superkabel.de) joined #pypy. | 17:01 | |
| squiddy (~reiner@46.128.136.223.dynamic.cablesurf.de) left irc: Remote host closed the connection | 17:01 | |
| kkris (~kris@188-22-115-215.adsl.highway.telekom.at) joined #pypy. | 17:07 | |
| mat^2 (mathias@87.55.0.198) left irc: Ping timeout: 240 seconds | 17:08 | |
| fijal | arigato: hm, that sounds very confusing | 17:12 |
| fijal | if you ask me | 17:12 |
| arigato | what does? | 17:16 |
| fijal | to have two views | 17:16 |
| arigato | ah | 17:16 |
| fijal | because for any non-trivial program you would have a mix of from-start and loops | 17:17 |
| arigato | ok | 17:17 |
| fijal | non-trivial = py.py, twisted.web etc. | 17:17 |
| arigato | sure | 17:17 |
| fijal | I think a consolidated view makes some sense | 17:17 |
| fijal | but to order it somehow in most-commonly-run order | 17:18 |
| fijal | and not just randomly | 17:18 |
| arigato | git tells me: | 17:20 |
| arigato | Your branch is behind 'origin/master' by 197 commits, and can be fast-forwarded. | 17:20 |
| arigato | how do I fast-forward it??? | 17:20 |
| arigato | (I tried to find the answer to this question for a while yesterday, and failed) | 17:20 |
| rguillebert | git rebase origin/master | 17:21 |
| rguillebert | probably | 17:21 |
| arigato | eh???? ok thanks | 17:21 |
| arigato | works | 17:21 |
| arigato | (I have no local changes at all) | 17:22 |
| Alex_Gaynor | arigato: git pull | 17:22 |
| fijal | arigato: that's a really useful message | 17:23 |
| fijal | last time I used git it was | 17:23 |
| fijal | error: 7 | 17:23 |
| fijal | or something as informative | 17:23 |
| arigato | :-( | 17:23 |
| nettok (~quassel@190.143.183.5) joined #pypy. | 17:24 | |
| cco3 (conleyo@nat/google/x-evoqkaxsbacvtqkr) left irc: Read error: No route to host | 17:27 | |
| Alex_Gaynor | fijal: that's not an error message, it comes from `git status` or so | 17:27 |
| fijal | maybe | 17:27 |
| fijal | I think it came from git clone | 17:28 |
| nedbat (~nedbat@python/psf/nedbat) left irc: Ping timeout: 245 seconds | 17:30 | |
| fijal | arigato: another idea | 17:33 |
| fijal | arigato: how about we perform the major collection in parallel | 17:33 |
| fijal | so we still pause, but we do 1/n | 17:34 |
| fijal | where n is number of cores | 17:34 |
| arigato | yes, that's what I'm trying on the concurrentgen branch | 17:34 |
| arigato | even with the minor collection | 17:34 |
| fijal | ah ok | 17:34 |
| arigato | (more important, because it has a larger percentage of time) | 17:34 |
| arigato | but it parallelize only 20% of the work or so, I don't see how more than 2 cores helps | 17:35 |
| fijal | most of the time I've seen copy-and-drag-out-of-nursery | 17:35 |
| fijal | being the main blocker | 17:35 |
| fijal | isn't it more parallelizable? | 17:35 |
| arigato | it takes 20% of a typical run | 17:36 |
| fijal | typical run of ... | 17:36 |
| fijal | ? | 17:36 |
| arigato | I've no clue how you can "parallelize" it more than by taking 20% away | 17:36 |
| fijal | of course | 17:36 |
| Action: arigato -> dinner | 17:36 | |
| fijal | ok | 17:36 |
| Alex_Gaynor | amdahl's law! | 17:37 |
| fijal | Alex_Gaynor: if you find some cool trace visualization let me know ;-) | 17:37 |
| Alex_Gaynor | fijal: working on turning my sketch into HTML atm | 17:37 |
| fijal | okey | 17:38 |
| mat^2 (mathias@87.55.0.198) joined #pypy. | 17:40 | |
| arigato (~arigo@xdsl-188-155-166-12.adslplus.ch) left irc: Ping timeout: 252 seconds | 17:42 | |
| Rhy0lite | fijal: Are PyPy developers aware of the weird terms of service for Bitbucket? | 17:49 |
| ivan | 3.12. Service Rules.? | 17:52 |
| ronny | Rhy0lite: after a first skimming the current tos doesnt seem to be too weird for me, whats the issue? | 17:54 |
| Rhy0lite | ronny: Confidentiality | 17:54 |
| Rhy0lite | specifically: "Confidential Information will also include the Applications, Software, Documentation and any new product or service information." | 17:55 |
| fijal | Rhy0lite: what does that mean? | 17:55 |
| Rhy0lite | exactly | 17:55 |
| Rhy0lite | It's a bi-directional confidentiality agreement | 17:55 |
| Rhy0lite | it essentially makes every subscriber part of a non-disclosure agreement | 17:56 |
| fijal | isn't it a standard clause? | 17:56 |
| Rhy0lite | fijal: Github does not have similar terms | 17:56 |
| fijal | ok | 17:56 |
| fijal | I personally don't care I didn't read it | 17:56 |
| ronny | Rhy0lite: i wonder if that one applies to working on shared private repos | 17:57 |
| Rhy0lite | It's not clear what they mean by "Applications, Software, Documentation and any new product or service" | 17:57 |
| Rhy0lite | it's not clear *whose* applications, software, etc. | 17:57 |
| Rhy0lite | and what is a new product | 17:57 |
| Alex_Gaynor | Rhy0lite: I wouldn'tbe surprised if it was something atlasian stuck there from some other product without realizing it didn't apply very well. I know the guy who created bitbucket I can ask him what it means if you like? | 17:57 |
| kenaan | 12fijal default 1184b731e827a6 15/pypy/tool/jitlogparser/: a minor fix | 17:58 |
| kenaan | 12fijal default 1156272f637518 15/pypy/: merge | 17:58 |
| Rhy0lite | Alex_Gaynor: yes, that could be helpful | 17:58 |
| Rhy0lite | a naive interpretation is that any new feature in PyPy is a new product or service | 17:58 |
| Rhy0lite | and implicitly confidential based on the ToS | 17:59 |
| Rhy0lite | I think they meant it for a subscriber hosting confidential / proprietary information on BitBucket | 18:00 |
| Rhy0lite | and BitBucket employees might need permission to access for a service request | 18:00 |
| Rhy0lite | as well as any analytics information about BitBucket to which subscribers are allowed access | 18:01 |
| Rhy0lite | for instance, is any of the JavaScript that BitBucket downloads a confidential application? | 18:03 |
| Action: ronny wonders what the correct word for programmers speculating on law is | 18:05 | |
| Alex_Gaynor | fijal: ping | 18:05 |
| Rhy0lite | ronny: it's not my speculation, it's questions from my employer | 18:05 |
| Alex_Gaynor | ronny: The Law :) | 18:05 |
| ronny | Rhy0lite: so why do you wonder here, instead of consulting people that should know? | 18:07 |
| Rhy0lite | ronny: I want to know what pypy developers think of this relative to other hosting websites without the clause. | 18:08 |
| Alex_Gaynor | Rhy0lite: By all accounts we don't :) | 18:11 |
| Rhy0lite | :-) | 18:11 |
| fijal | Alex_Gaynor: pong | 18:11 |
| Alex_Gaynor | fijal: what do you think the "key stats" for a log are? So far I've gone with traces compiled and traces aborted, 2 or 3 more might be good | 18:11 |
| fijal | what do you mean? | 18:12 |
| Alex_Gaynor | just some stuff I'm putting in the sidebar which will show up on every page | 18:12 |
| fijal | so what would you put in aborted traces? | 18:12 |
| fijal | I don't think they're that interesting | 18:13 |
| fijal | because you usually want to inspect them one-by-one | 18:13 |
| Alex_Gaynor | fijal: these are just counts of things | 18:13 |
| fijal | ah ok | 18:13 |
| fijal | then yes | 18:13 |
| Alex_Gaynor | so compiled traces: 4, aborted traces: 0 | 18:13 |
| fijal | you can break down traces | 18:13 |
| fijal | into compiled from start | 18:13 |
| Alex_Gaynor | just any other important numbers? | 18:13 |
| Alex_Gaynor | fijal: too detailed, that's for a different page :) | 18:14 |
| fijal | I think we should measure number of aborted assemblers due to quasi immutable failing | 18:14 |
| fijal | but I guess we'll figure this out as we go | 18:14 |
| Rhy0lite | Alex_Gaynor: can you provide any stats about coverage? | 18:15 |
| Rhy0lite | how much of the application has been traced? | 18:15 |
| Rhy0lite | how much of the traces have been compiled? | 18:15 |
| Alex_Gaynor | Rhy0lite: hmm, perhaps someday, ATM coverage isn't possible | 18:15 |
| Alex_Gaynor | though that's definitely an interesting idea for the future | 18:15 |
| fijal | Alex_Gaynor: I want some warmup info | 18:17 |
| Rhy0lite | Alex_Gaynor: what about stats for failed guards in traces? | 18:17 |
| fijal | Rhy0lite: this is a bit reflected in bridges | 18:17 |
| fijal | but also not as interesting for us as for other jits | 18:17 |
| fijal | because we can *always* compile assembler | 18:18 |
| fijal | Alex_Gaynor: honestly, I don't find any single summary any useful so far | 18:18 |
| fijal | think about it, what would you use that for? | 18:20 |
| fijal | unless it's highlighted in red *IT WAS TRACING ALL THE TIME* | 18:20 |
| Rhy0lite | Alex_Gaynor: average length of traces in # of native instructions? | 18:20 |
| fijal | some sort of average density of native instructions per bytecode | 18:20 |
| fijal | or IR/bytecode | 18:20 |
| fijal | is sometimes useful | 18:21 |
| fijal | *sometimes* | 18:21 |
| Alex_Gaynor | fijal: I'm working on something that will make it very clear if you are tracing all the time, give me 10 minutes and I can show you the first secreenshot | 18:21 |
| fijal | okey | 18:21 |
| Action: fijal is not in a rush | 18:21 | |
| fijal | Alex_Gaynor: I'm trying to make senses out of traces *on python level* | 18:21 |
| fijal | failing so far ;] | 18:21 |
| ronny | random idea, would it be possible to make traces reasonably symbolic wrt things like global objects/function parameter/object layouts | 18:25 |
| Rhy0lite | ronny: do you mean additional comments in the traces relating back to user variables? | 18:26 |
| fijal | ronny:yes, but hard | 18:27 |
| fijal | ronny: besides, I don't think anyone wants that | 18:27 |
| Rhy0lite | fijal: maybe I am thinking about something different than what ronny intends, but it seems that it would have been useful to relate the address to user array elements while investigating laplace.py performance | 18:28 |
| ronny | Rhy0lite: my basic idea is, that if a trace is completely symbolic, one can dump the traces and generated code and reload them later | 18:30 |
| Rhy0lite | ah, hmm | 18:30 |
| Rhy0lite | is this related to pre-warmed cache? | 18:30 |
| ronny | define pre-warmed cache | 18:30 |
| Rhy0lite | loading traces and machine code at startup when re-running an application instead of waiting for pypy to rediscover traces on each invocation | 18:32 |
| fijal | Rhy0lite: what I'm, saying is I know where those things come from | 18:33 |
| voidspace (~anonymous@python/psf/voidspace) left irc: Quit: voidspace | 18:37 | |
| antocuni (~antocuni@host117-71-dynamic.58-82-r.retail.telecomitalia.it) joined #pypy. | 18:38 | |
| fijal | Rhy0lite: I can sell knowledge how to use it, but there is very little incentive for me to make them more user friendly | 18:38 |
| fijal | since I can usually find where stuff comes from | 18:38 |
| fijal | Rhy0lite: btw, I'm always getting cynical when people want from me features that don't really sort any of my problems | 18:39 |
| Alex_Gaynor | fijal, Rhy0lite: Ok first pass at the mockup, so far just the page+sidebar: http://i.imgur.com/CWQVv.png | 18:39 |
| fijal | Alex_Gaynor: sounds good | 18:39 |
| fijal | Alex_Gaynor: note that we can't right now have both of those info's there | 18:40 |
| fijal | from one log | 18:40 |
| fijal | but that is fixable | 18:40 |
| Alex_Gaynor | fijal: sure you can PYPYLOG=file.pypylog | 18:40 |
| fijal | yes, but then there are no traces | 18:40 |
| fijal | so you have to rerun to get actual loops | 18:40 |
| Alex_Gaynor | you get traces with that | 18:40 |
| fijal | no you don't | 18:40 |
| fijal | Alex_Gaynor: I would put some diagram at the front with numbers | 18:41 |
| fijal | or maybe hmmm | 18:41 |
| fijal | let me do some mockup as well | 18:41 |
| fijal | Alex_Gaynor: I would do relative bars with number of runs per iteration | 18:42 |
| fijal | as the main view | 18:43 |
| Alex_Gaynor | fijal: wtf you're right PYPYLOG=x.pypylog doesn't have logs | 18:43 |
| fijal | and then if you click on one you get only that trace | 18:43 |
| fijal | with links | 18:43 |
| Rhy0lite | are there any stats about whether a trace returns to the interpreter versus jumping to another trace? | 18:43 |
| fijal | Rhy0lite: no | 18:44 |
| fijal | you can get that (probably) but it's relatively boring | 18:45 |
| fijal | unless you want to measure the warmup | 18:45 |
| jnoller (~jnoller@vpn.nasuni.com) left irc: Quit: Leaving... | 18:57 | |
| jyp (~interrupt@175.197.245.105) left irc: Remote host closed the connection | 19:00 | |
| nedbat (~nedbat@python/psf/nedbat) joined #pypy. | 19:05 | |
| Trundle (~andy@p5B2DB738.dip.t-dialin.net) joined #pypy. | 19:22 | |
| Trundle (~andy@p5B2DB738.dip.t-dialin.net) left irc: Changing host | 19:22 | |
| Trundle (~andy@python/site-packages/trundle) joined #pypy. | 19:22 | |
| DasIch_ (~dasich@p3E99135B.dip.t-dialin.net) joined #pypy. | 19:26 | |
| fijal | Alex_Gaynor: want me to do some layouts as well? | 19:26 |
| Alex_Gaynor | fijal: do you have some desire to? I'm perfecltly happy to work on it | 19:27 |
| fijal | ok | 19:28 |
| fijal | not particularly, I can get stuff done on the pypy side | 19:29 |
| DasIch (~dasich@p4FFDF3A8.dip.t-dialin.net) left irc: Ping timeout: 240 seconds | 19:30 | |
| davidpk (~davidpk@5e09151b.bb.sky.com) left irc: Quit: davidpk | 19:34 | |
| Rhy0lite | I wish that I could come to the sprint, but it's a little less convenient from the U.S. at the last minute | 19:49 |
| Alex_Gaynor | fijal, Rhy0lite: And now with most of the overview page filled out: http://i.imgur.com/i2Z9V.png | 19:50 |
| fijal | Alex_Gaynor: I would put stderr/stdout and total time | 19:51 |
| fijal | somewhee there | 19:51 |
| Rhy0lite | very nice | 19:51 |
| Alex_Gaynor | fijal: ah yes, stdin/stdout good idea | 19:51 |
| Alex_Gaynor | err err | 19:52 |
| fijal | :] | 19:52 |
| Alex_Gaynor | fijal: execution time and stdout/stderr: http://i.imgur.com/eXaur.png | 19:55 |
| Rhy0lite | shoul Log Stats be on the right? | 19:56 |
| Alex_Gaynor | fijal: err, is there a way to get JIT options t runtime? e.g. if I do pypy --jit threshold=4 where is that? | 19:56 |
| Alex_Gaynor | Rhy0lite: I don't know, I need to figure out how to better organize those sections | 19:57 |
| Rhy0lite | I understand that its associated with the "overview" page | 19:57 |
| fijal | Alex_Gaynor: you can get it from somewhere | 19:57 |
| Rhy0lite | and you want to distinguish it from key stats | 19:57 |
| fijal | in pypyjit | 19:57 |
| Rhy0lite | but it seems like a lot of wasted white space | 19:57 |
| Alex_Gaynor | fijal: pypyjit has defaults but that's the defaults... | 19:57 |
| fijal | hm | 19:57 |
| Alex_Gaynor | Rhy0lite: Key Stats will be visible on all pages, not just overview though | 19:57 |
| Rhy0lite | alex: yes | 19:58 |
| fijal | Alex_Gaynor: want me to put it there? | 19:58 |
| Alex_Gaynor | I'll figure out that detail later | 19:58 |
| Alex_Gaynor | fijal: would be nice yes | 19:58 |
| durin42 (~durin@adium/durin42) left irc: Ping timeout: 252 seconds | 19:58 | |
| setmeaway (~setmeaway@119.201.52.190) left irc: Quit: Leaving | 19:58 | |
| fijal | ok | 19:58 |
| setmeaway (~setmeaway@119.201.52.190) joined #pypy. | 19:58 | |
| Rhy0lite | I understand that you want the right side bar to appear in all views | 19:58 |
| fijal | Alex_Gaynor: looks good btw | 19:59 |
| jterrace (~jterrace@aegis.CS.Princeton.EDU) left irc: Quit: Leaving. | 20:00 | |
| Alex_Gaynor | fijal: now I'll do the trace detail view I suppose, needs more though first | 20:00 |
| durin42 (~durin@adium/durin42) joined #pypy. | 20:00 | |
| Alex_Gaynor | fijal: a place where I can get GC flags would be cool too :) | 20:00 |
| fijal | uh | 20:01 |
| fijal | in __pypy__ maybe then? | 20:01 |
| Alex_Gaynor | __pypy__ would be fine | 20:01 |
| Alex_Gaynor | __pypy__.gc.flags or such | 20:01 |
| Alex_Gaynor | or gc_flags | 20:01 |
| Alex_Gaynor | or whatever | 20:01 |
| davisagli (~davisagli@davisagli.com) left irc: Excess Flood | 20:01 | |
| azanella (~azanella@189.6.80.207) left irc: Read error: Operation timed out | 20:01 | |
| davisagli (~davisagli@davisagli.com) joined #pypy. | 20:02 | |
| antocuni (~antocuni@host117-71-dynamic.58-82-r.retail.telecomitalia.it) left irc: Ping timeout: 252 seconds | 20:02 | |
| fijal | I love how interp_jit.py starts with "This is not the JIT :)" | 20:02 |
| fijal | Alex_Gaynor: for what is worth pypy --jit typo=3 does nothing | 20:04 |
| Alex_Gaynor | fijal: feel like fixing? | 20:05 |
| fijal | yeah | 20:06 |
| Alex_Gaynor | fijal: jitviewer is working ATM right? | 20:06 |
| fijal | Alex_Gaynor: kinda | 20:06 |
| fijal | it does not display source code | 20:06 |
| fijal | and loops are kinda confusing | 20:06 |
| fijal | and jumps don't work | 20:06 |
| fijal | other than that - yes | 20:06 |
| Alex_Gaynor | heh, k | 20:06 |
| Alex_Gaynor | fijal: my loops don't have names | 20:07 |
| fijal | Alex_Gaynor: do you have a very new pypy | 20:08 |
| fijal | ? | 20:08 |
| fijal | like 3h new | 20:08 |
| Alex_Gaynor | fijal: c2d42bf471da | 20:08 |
| Alex_Gaynor | fijal: the only change is in logparser, so yes | 20:08 |
| fijal | indeed | 20:09 |
| fijal | hg pull jitviewer? | 20:09 |
| fijal | and make sure you're on default? | 20:09 |
| Alex_Gaynor | yes andyes | 20:09 |
| fijal | then it should work | 20:10 |
| fijal | img? | 20:10 |
| Alex_Gaynor | fijal: http://imgur.com/Vkxtc | 20:11 |
| fijal | oh nice | 20:12 |
| fijal | I haven't seen that | 20:12 |
| Alex_Gaynor | you want the logfile + script? | 20:13 |
| kenaan | 12fijal jitviewer 11e9485a7845a0 15/bin/jitviewer.py: slightly better - display loops at least | 20:13 |
| fijal | Alex_Gaynor: ^^^? | 20:13 |
| fijal | missing password entry :/ | 20:13 |
| Alex_Gaynor | ok yes | 20:14 |
| Alex_Gaynor | now I can see the code | 20:14 |
| Alex_Gaynor | show asm doesn't work btw :) | 20:14 |
| fijal | yes, I know | 20:15 |
| fijal | among other things not working | 20:15 |
| kenaan | 12fijal default 1194e9969b5f00 15/pypy/rlib/jit.py: Meh, at least raise error in case there is a typo | 20:17 |
| lincolnn (~lincolnn0@cpe-98-154-215-147.socal.res.rr.com) joined #pypy. | 20:18 | |
| kenaan | 12mattip numpypy-axisops 11e5b246bae93a 15/pypy/module/micronumpy/: add tests for numpypy.reduce | 20:18 |
| kenaan | 12mattip numpypy-axisops 11da091f2c5c7d 15/pypy/module/micronumpy/: checkpoint | 20:18 |
| kenaan | 12mattip numpypy-axisops 11b12a872f0961 15/pypy/module/micronumpy/: rework AxisIterator, make single tests pass | 20:18 |
| kenaan | 12mattip numpypy-axisops 11cd8f7d57fe3e 15/pypy/module/micronumpy/signature.py: why do default args cause problems? | 20:18 |
| kenaan | 12mattip numpypy-axisops 11a1810346784a 15/pypy/module/micronumpy/: iterators, frames in place, but still not correct | 20:18 |
| fijal | pffff | 20:19 |
| fijal | Alex_Gaynor: of course different drivers can have different params | 20:20 |
| fijal | except noone uses this feature | 20:20 |
| Alex_Gaynor | fijal: isn't there now global defaults or such? | 20:20 |
| fijal | well, yes | 20:20 |
| fijal | if you pass None as a driver, it works that way | 20:20 |
| Alex_Gaynor | fijal: and doesn't --jit change those? | 20:20 |
| fijal | but you still *can* call separate drivers (from RPython) | 20:20 |
| fijal | at least in theory | 20:20 |
| fijal | should I just read params from the first one then? | 20:21 |
| Alex_Gaynor | fijal: yes, sounds good enough for me | 20:21 |
| fijal | Alex_Gaynor: I wonder if I can't just store the global param | 20:23 |
| fijal | and be happy | 20:23 |
| fijal | instead of *really* reading it from JIT | 20:23 |
| Alex_Gaynor | fijal: well, i have a table for it on the page now: http://i.imgur.com/rWvZL.png :) | 20:29 |
| fijal | k | 20:32 |
| Alex_Gaynor | fijal: random note BaseArray.order is annotated as a str, not a char | 20:35 |
| Alex_Gaynor | fijal: does http://paste.pocoo.org/show/526586/ look like the fix? | 20:35 |
| Rhy0lite (dje@nat/ibm/x-bivwrfbkvkqxighf) left irc: Quit: Leaving | 20:44 | |
| rguillebert (~rguillebe@2a01:e34:eea7:c690:21f:c6ff:fe12:4dee) left irc: Remote host closed the connection | 20:53 | |
| rguillebert (~rguillebe@2a01:e34:eea7:c690:21f:c6ff:fe12:4dee) joined #pypy. | 20:56 | |
| fijal | Alex_Gaynor: probably :) | 21:01 |
| fijal | you never know though | 21:01 |
| fijal | Alex_Gaynor: so, I don't think the JIT params are that interesting | 21:01 |
| fijal | why would they be? | 21:01 |
| fijal | GC are though | 21:01 |
| Alex_Gaynor | fijal: if you run with a different trace_limit or something it can be useful | 21:02 |
| kennethr_ (~kennethre@c-24-127-96-129.hsd1.va.comcast.net) joined #pypy. | 21:02 | |
| fijal | yes, but then you know | 21:02 |
| Alex_Gaynor | fijal: ok but I say I run the same script with 2 different trace_limits to share with people | 21:02 |
| Alex_Gaynor | that info should be on the page | 21:02 |
| fijal | yeah, maybe | 21:02 |
| fijal | I'm not 100% sure, but let's see | 21:02 |
| Alex_Gaynor | remember the idea is this is a hosted tool, not just something you run on your own machine | 21:03 |
| fijal | right | 21:08 |
| fijal | what does it differ? | 21:08 |
| fijal | geez, I can't speak english today | 21:08 |
| fijal | how does it make a difference? | 21:08 |
| Alex_Gaynor | fijal: because if I use it to link to someone it should have as much info as possible | 21:09 |
| fijal | pffff | 21:16 |
| fijal | Alex_Gaynor: annoying :/ | 21:16 |
| Alex_Gaynor | fijal: what is? | 21:16 |
| fijal | getting the parameters | 21:16 |
| Alex_Gaynor | really? :( | 21:17 |
| Alex_Gaynor | fijal: well, it's not critical ATM, still in the mockup stage | 21:17 |
| Alex_Gaynor | now I'm trying to figure out what the actual traceviewer should look like | 21:17 |
| fijal | yeah, I know | 21:18 |
| fijal | but there is a lot of work to be done on the pypy side and this is one of those | 21:18 |
| fijal | parsing of traces has to be revamped | 21:18 |
| fijal | how to get a list of traces as well | 21:18 |
| fijal | etc. etc. | 21:18 |
| nettok (~quassel@190.143.183.5) left irc: Remote host closed the connection | 21:19 | |
| fijal | would be a useful thing to have | 21:21 |
| Trundle (~andy@python/site-packages/trundle) left irc: Ping timeout: 252 seconds | 21:22 | |
| fijal | Alex_Gaynor: for what is worth, set_param can't be used in a jitted loop | 21:27 |
| fijal | (apparently) | 21:27 |
| nedbat (~nedbat@python/psf/nedbat) left irc: Ping timeout: 255 seconds | 21:27 | |
| fijal | oh noes | 21:29 |
| fijal | Alex_Gaynor: I give up, I'll just keep a copy of whatever was set from interp_jit | 21:29 |
| fijal | reading this stuff directly from jit is a mess :/ | 21:30 |
| fijal | but than someone at some point will fail to add some functionality :/ | 21:30 |
| fijal | ok, I give up | 21:30 |
| Trundle (~andy@python/site-packages/trundle) joined #pypy. | 21:30 | |
| fijal | Alex_Gaynor: I'll go to sleep maybe instead | 21:30 |
| fijal | and will try to organize traces in a nicer way | 21:31 |
| fijal | and write some decent tests that run pypy-c | 21:31 |
| fijal | NIGHTLY | 21:31 |
| fijal | and make sure jitviewer agrees | 21:31 |
| [mat^2] (mathias@87.55.0.198) joined #pypy. | 21:50 | |
| mat^2 (mathias@87.55.0.198) left irc: Read error: Connection reset by peer | 21:51 | |
| mimi_ (~mimi@97-88-28-179.dhcp.roch.mn.charter.com) left irc: Ping timeout: 248 seconds | 21:57 | |
| nedbat (~nedbat@python/psf/nedbat) joined #pypy. | 21:58 | |
| ShadowE989 (~ShadowE98@74-47-218-61.dr02.rmny.wv.frontiernet.net) left irc: Ping timeout: 240 seconds | 22:12 | |
| mimi_ (~mimi@97-88-28-179.dhcp.roch.mn.charter.com) joined #pypy. | 22:12 | |
| Alex_Gaynor | fijal: ok, good night then | 22:15 |
| `fox` (~fox@host139-108-dynamic.245-95-r.retail.telecomitalia.it) left irc: Ping timeout: 240 seconds | 22:22 | |
| ShadowE989 (~ShadowE98@74-47-218-61.dr02.rmny.wv.frontiernet.net) joined #pypy. | 22:26 | |
| bbot2 | Started: 15http://buildbot.pypy.org/builders/own-macosx-x86-32/builds/758 | 22:30 |
| bbot2 | Started: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64/builds/186 | 22:30 |
| bbot2 | Started: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-32/builds/995 | 22:30 |
| bbot2 | Started: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64-2/builds/14 | 22:30 |
| kkris (~kris@188-22-115-215.adsl.highway.telekom.at) left irc: Quit: Leaving. | 22:35 | |
| EnCuKou (~encukou@ip-94-113-220-25.net.upcbroadband.cz) left irc: Remote host closed the connection | 22:42 | |
| nedbat (~nedbat@python/psf/nedbat) left irc: Ping timeout: 276 seconds | 22:52 | |
| Turicas (~alvaro@mail.justen.eng.br) joined #pypy. | 23:21 | |
| antocuni (~antocuni@host117-71-dynamic.58-82-r.retail.telecomitalia.it) joined #pypy. | 23:37 | |
| nickik (~nick@2001:67c:20a1:1018:226:9eff:feef:8369) left irc: Quit: Verlassend | 23:37 | |
| bfirsh (u1308@gateway/web/irccloud.com/x-ngyvtrttxpaxucvt) joined #pypy. | 23:41 | |
| nedbat (~nedbat@python/psf/nedbat) joined #pypy. | 23:55 | |
| Turicas (~alvaro@mail.justen.eng.br) left irc: Ping timeout: 240 seconds | 23:55 | |
| --- Wed Dec 28 2011 | 00:00 | |
Generated by irclog2html.py 2.9.2 by Marius Gedminas - find it at mg.pov.lt!