#pypy IRC log for Saturday, 2011-07-16

CIA-5503agaynor 07roundup * 10#797/Deadlock with threads: (log message trimmed)00:00
CIA-55[new] Running this code under PyPy trunk (or 1.5) on Linux 64 results in a deadlock:00:00
CIA-55import threading00:00
CIA-55def get_results():00:00
CIA-55pass * 14https://bugs.pypy.org/issue79700:00
ramusara (~ramusara@220.156.210.236.user.e-catv.ne.jp) joined #pypy.00:01
stakkars_ (~tismer@91-66-101-126-dynip.superkabel.de) joined #pypy.00:06
kisielk (~kamil@zymeworks.com) left irc: Remote host closed the connection00:10
zain (~zain@69.38.221.130) left irc: Ping timeout: 240 seconds00:13
zain (~zain@69.38.221.130) joined #pypy.00:14
justinpeel (~nepo@c-76-23-44-72.hsd1.ut.comcast.net) left irc: Ping timeout: 252 seconds00:34
dgl (~dgl@109.86.165.231) left irc: Quit: Leaving...00:40
etrepum (~bob@accessnat4.mochimedia.net) left irc: Ping timeout: 240 seconds00:49
rokujyouhitoma (~rokujyouh@EM114-48-189-222.pool.e-mobile.ne.jp) joined #pypy.00:52
rokujyouhitoma (~rokujyouh@EM114-48-189-222.pool.e-mobile.ne.jp) left irc: Client Quit00:53
Sho_ (~EHS1@kde/hein) joined #pypy.01:22
stakkars (~tismer@91-66-101-126-dynip.superkabel.de) left irc: Quit: schnarch01:56
Nick change: stakkars_ -> stakkars01:56
Hodgestar (~Hodgestar@gluon.za.net) left irc: Remote host closed the connection02:22
iratsu (~alang@cpc2-oxfd21-2-0-cust354.4-3.cable.virginmedia.com) joined #pypy.02:23
Hodgestar (~Hodgestar@gluon.za.net) joined #pypy.02:24
lac_paddle_dream 02:29
rhiebert (~rhiebert@24.104.139.205) left irc: Remote host closed the connection03:14
gtaylor (~gtaylor@108-196-160-120.lightspeed.tukrga.sbcglobal.net) joined #pypy.03:22
justinpeel (~nepo@c-76-23-44-72.hsd1.ut.comcast.net) joined #pypy.03:23
gtaylor (~gtaylor@108-196-160-120.lightspeed.tukrga.sbcglobal.net) left irc: Quit: gtaylor03:30
cwillu_at_work (~cwillu@cwillu.com) left irc: Ping timeout: 240 seconds03:53
cwillu_at_work (~cwillu@cwillu.com) joined #pypy.03:53
bgola (~bgola@189.121.22.148) left irc: Ping timeout: 240 seconds04:05
gutworth (~benjamin@64-131-13-109.usfamily.net) left irc: Ping timeout: 240 seconds04:09
CIA-5503justinpeel 07roundup * 10#786/Module re, \d with re.U option does not work the same way as with CPython: 04:14
CIA-55It worked for me as linguist said in CPython 2.6 and as dripton said in CPython04:14
CIA-552.7. A version of CPython 3.3 that I have on my computer works j ... * 14https://bugs.pypy.org/issue78604:14
bgola (~bgola@189.121.22.148) joined #pypy.04:20
justinpeel (~nepo@c-76-23-44-72.hsd1.ut.comcast.net) left irc: Ping timeout: 258 seconds04:32
mkhan (~mkhan@122.172.253.214) left irc: Ping timeout: 260 seconds04:41
mkhan (~mkhan@122.167.122.135) joined #pypy.04:46
jonanin (~jonanin@71-90-76-10.dhcp.ftbg.wi.charter.com) joined #pypy.04:50
donri (~donri@unaffiliated/dagodenhall) left irc: Remote host closed the connection04:57
Nick change: Gulaway -> Gulopine04:59
justinpeel (~nepo@c-76-23-44-72.hsd1.ut.comcast.net) joined #pypy.05:03
etrepum (~bob@75-101-96-144.dsl.static.sonic.net) joined #pypy.05:11
kenaan12alex_gaynor default 11add21ab2b28b 15/pypy/module/: Remove a bunch of dead imports.05:15
etrepum (~bob@75-101-96-144.dsl.static.sonic.net) left irc: Quit: etrepum05:22
etrepum (~bob@75-101-96-144.dsl.static.sonic.net) joined #pypy.05:24
ivan (~ivan@unaffiliated/ivan/x-000001) left irc: Excess Flood05:29
ivan (~ivan@unaffiliated/ivan/x-000001) joined #pypy.05:30
CIA-5503justinpeel 07roundup * 10#791/Simple wordcount is significantly slower and fatter than CPython: 05:41
CIA-55I don't know how much help this will be, but I decided to do a break down on05:41
CIA-55various operations. These were done with a file containing only a m ... * 14https://bugs.pypy.org/issue79105:41
Nick change: Gulopine -> Gulaway06:04
kenaan12alex_gaynor default 11cfa96ceb9935 15/pypy/module/_file/interp_stream.py: Fix translation (whoops).06:09
kenaan12alex_gaynor default 1139ad5205b27a 15/pypy/module/: fix more stuff.06:32
justinpeelso I noticed that app_io (which includes the print function) has # NOT_RPYTHON at the top06:46
justinpeelis it possible to just convert the print function to RPython there without doing the whole file( and keep the print function in the same file)?06:46
mkhanHi all, what would you suggest for a visual or terminal based python debugger on mac ?06:49
sanxiyn (~tinuviel@125.177.240.192) joined #pypy.06:51
lac (~lac@m83-178-21-44.cust.tele2.se) joined #pypy.06:51
Ademanmkhan: pdb++ also ask in #python not here06:58
donri (~donri@unaffiliated/dagodenhall) joined #pypy.07:00
Eruquen (Eruquen@server3.raumopol.de) left irc: Ping timeout: 258 seconds07:04
Eruquen (Eruquen@server3.raumopol.de) joined #pypy.07:04
kans (~kans@c-98-236-30-13.hsd1.pa.comcast.net) left irc: Read error: Connection reset by peer07:06
kans (~kans@c-98-236-30-13.hsd1.pa.comcast.net) joined #pypy.07:07
kans (~kans@c-98-236-30-13.hsd1.pa.comcast.net) left irc: Quit: Leaving.07:23
justinpeel (~nepo@c-76-23-44-72.hsd1.ut.comcast.net) left irc: Ping timeout: 240 seconds07:23
fijal (~fijal@197.107.80.96) joined #pypy.07:29
Alex_Gaynorhi fijal 07:33
fijalhi alex07:33
Alex_GaynorI got the deadlock down to a reproducable test case07:34
Alex_Gaynorit only happens with the JIT though07:34
fijaluh07:35
fijalnot good07:35
fijaldid you look at traces?07:35
fijalwell, jit can change race conditions07:35
Alex_GaynorI tried, it's a bit hard to really look at them without jitviewer, but nothing looked totally crazy07:35
Alex_Gaynoryes, race conditions is my current theory07:36
Alex_Gaynorunfortunately I can't find them, it wouldn't surprise me that threading.py has race conditions that only apepar because pypy is faster07:36
fijalwhy without a jitviewer?07:36
fijalbecause it crashes?07:36
fijalif you give me a download link to the log I'll fix it just now07:37
Alex_Gaynorwell because it deadlocks, and you have to kill it, and you get an incomplete log07:37
Alex_Gaynorfijal: script is in the issue tracker, you can run it yourself, takes like 30 seconds07:37
fijalah07:37
fijalwell, I wanted to fix the jitviewer issue not the deadlock07:38
Alex_Gaynoroh, the one with bridges you mean?07:38
fijalyou can hop to gdb and call flush07:38
Alex_Gaynoryes please :)07:38
fijalso I need a log ;-)07:38
fijalI fixed bridges07:38
Alex_Gaynorone sec, I'll get you the link07:38
Alex_Gaynorhttp://dl.dropbox.com/u/1015145/django-tests.pypylog.gz07:38
fijalmy indicator is lying07:39
Alex_Gaynorfijal: btw jitviewer tests on pypy are broken, I think you forgot to hg add a file07:39
fijalit says "GSM" and I get 300k transfer07:39
Alex_Gaynor300KB/s?07:40
fijalKb07:40
Alex_Gaynor:(07:40
fijalwhich one is bigger B or b?07:40
Da_BlitzB07:40
fijalthe bigger one07:40
Alex_GaynorKB=>kilobytes, Kb=>kilobits07:40
fijalAlex_Gaynor: you removed important imports07:40
fijalso KB07:40
Alex_Gaynorfijal: I fxied them though07:41
fijalbad alex no cookie07:41
Alex_Gaynor:(07:41
antocuni (~antocuni@host150-71-dynamic.58-82-r.retail.telecomitalia.it) joined #pypy.07:41
fijalyes I did forgot07:41
Alex_Gaynorforgot what?07:41
fijalI did forget07:43
fijalto add a file07:43
Alex_Gaynoroh, please add it I guess07:43
fijalI found a problem with our numpy approach07:48
fijalimagine this:07:48
fijala = b + c + d + e07:48
fijalprint (a + 3)[0]07:48
fijalforces a + 307:48
fijalprint (a + 4)[0]07:48
fijalcomputes a again07:48
Alex_Gaynor<something with weakrefs and saving partial computations which are alive>07:49
Alex_Gaynoror just have getitem not force the entire array07:49
antocunibah07:49
Alex_Gaynorthat fixes these ones anyways07:49
antocunibenchmarks failed :-/07:49
antocunihttp://buildbot.pypy.org/builders/jit-benchmark-linux-x86-32/builds/782/steps/shell_7/logs/stdio07:49
fijalantocuni: yeah I've seen that07:50
Alex_Gaynorwhat does that error even mean07:50
fijalantocuni: you said you'll check if they're the same btw :)07:50
antocunifijal: I checked the history07:50
fijalaha!07:50
antocuniand the only difference was "importing twisted"07:50
antocuni(instead of having it as svn:external)07:51
fijalAlex_Gaynor: weakrefs are a bad idea, because we don't even compute a)07:51
fijalor we don't store the result07:51
fijalwe compute a + 3 and then a + 407:51
Alex_Gaynorindeed07:51
fijalI suppose this is not really that important issue07:51
fijalwe might need to have a way to officially force though07:51
Alex_Gaynorhave getitem force only that index07:51
fijalwell, I meant any-forcing-operation07:52
fijalnot getitem in particular07:52
fijalI think we should keep getitem forcing and think later :)07:52
fijalbecause you want to cache the results (maybe)07:52
Alex_Gaynorgood point07:52
fijalbtw07:53
fijaldid you know that pdb.pm() doesn't work on pypy?07:53
Alex_Gaynorno, I did not07:53
Alex_Gaynordid you know that until yesterday we did not free OS resources for locks?07:53
fijalI've seen the commit07:54
Alex_Gaynorunfortunately it's unrelated to my deadlock07:55
fijalantocuni: I've got weird offsets07:55
fijalin assembler07:55
hakanardofijal: maybe it would be possible to have several forcing/caching strategies that would be choosen from app-level?07:56
Alex_Gaynorhakanardo: well, it ends up a mess because users have to change their code to run it on pypy07:56
hakanardodifferent applications might need different strategies07:56
fijalhakanardo: yes07:56
fijalAlex_Gaynor: scientists are "I don't give a fuck I want to run it fast"07:57
hakanardoso a defualt one that works in most cases07:57
fijalif they're willing to inline fortran there, common...07:57
hakanardoand more fancy once that can speed up special cases07:57
Kaskuka (~John@osbk-4d08b9ef.pool.mediaWays.net) joined #pypy.07:59
sanxiynI think there should be explicit force...08:01
ronnyreality check - pypy is using the same pyc file format as cpython of the intended version08:01
ronny(someone claimed in a bug to distribute it doesnt)08:01
cwillu_at_work (~cwillu@cwillu.com) left irc: Ping timeout: 255 seconds08:01
Shanita (~John@osbk-4d08b9ef.pool.mediaWays.net) left irc: Ping timeout: 255 seconds08:01
cwillu_at_work (~cwillu@cwillu.com) joined #pypy.08:01
fijal_ (~fijal@197.171.46.198) joined #pypy.08:02
fijal_Alex_Gaynor: UGH08:02
Alex_Gaynor?08:03
fijal_can I do a partial backout?08:03
fijal_I commited too many files08:04
fijal (~fijal@197.107.80.96) left irc: Ping timeout: 258 seconds08:04
fijal_Alex_Gaynor: I fixed one issue, but the other issue is that loop addresses are not unique08:04
antocunifijal_: what happens with pdb.pm on pypy?08:04
Alex_Gaynoryou mean if a loop get's deallocated?08:04
fijal_antocuni: we don't have sys.last_traceback08:04
fijal_Alex_Gaynor: yes08:04
Alex_Gaynornice08:04
fijal_I have to fix this08:04
fijal_anyway, HG HELP08:04
Alex_Gaynoruse a tuple of loop_id, loop_addr everywhere I gues08:05
Nick change: fijal_ -> fijal08:05
fijalAlex_Gaynor: yeah, but I also have an assembler dump08:05
fijalwhich doesn't have a loop_id08:05
Alex_Gaynormake jit dump loop_id with it08:05
fijalanyway, I know how to fix it but I want to push changes, how do I do this?08:05
fijalEWRONGLEVEL08:05
Alex_GaynorETOOMANYLEVELS08:05
fijalthey come in order so that's fine08:06
Alex_Gaynorok08:06
fijalcan I merge the reverse of a checkin?08:06
antocunifijal: for me pdb.pm seems to work08:06
Alex_Gaynorhg backout?08:06
fijalantocuni: http://paste.pocoo.org/show/439965/08:07
fijalAlex_Gaynor: that backs out the whole thing08:07
fijalI want to review the change by hand08:07
fijalor do specific files08:07
Alex_Gaynorbackout the whole thing with --no-commit and then reapply by hand08:07
fijalso I need a diff to look at08:07
fijalok08:07
antocunifijal: http://paste.pocoo.org/show/439966/08:08
antocuniwe have last_traceback08:08
fijalnice08:08
antocunibut it seems it's not set inside except:08:08
sanxiynhg record?08:08
fijalhg backout: option --no-commit not recognized08:08
antocunifijal: btw, you should use pdb.xpm() (in pdb++), which always work08:09
antocuniworks08:10
fijalok08:10
fijalbut we should not break stuff anyway :)08:10
mkhan (~mkhan@122.167.122.135) left irc: Disconnected by services08:10
antocuni"""they are set when an exception is not handled and the interpreter prints an error message and a stack traceback"""08:10
antocuniquoting the docs about last_{type,value,traceback}08:10
fijalwell ok, fine08:10
fijalbut apparently they're not08:10
antocuniI don't know why cpython does something different08:11
fijalshould we fix pdb.py that we ship?08:11
antocunino08:11
fijalno?08:11
antocuniif we want to fix this usecase, we should have last_traceback, IMHO08:11
fijalhm08:11
fijalit's not like it works on cpython08:11
antocunior fix pdb.py upstream08:11
antocuni(or just ship pdb++ with pypy :-))08:12
fijalyes, but they'll say "ok, but 3.x only" I'm not that interested08:12
fijalI would rather fix pdb that we ship and provide a bug report08:12
antocuniwell, my point is that it's not a "fix"08:13
fijalantocuni: http://paste.pocoo.org/show/439967/08:13
antocuniit's a new feature08:13
fijalfix as in make pdb.pm use sys.exc_info()[2]08:13
antocunifijal: yes, I knew that there was a reason why I wrote xpm() :-)08:13
fijalantocuni: btw, flymake that I sent you is awesome08:16
fijaltry it08:16
antocuniyes, I suppose I should give it a try at some point08:16
fijallike now :)08:16
antocunino, now I want to fix benchmarks08:16
fijalif you don't do it now, you won't do it at all until a sprint where we meet08:16
Action: fijal off for a bit08:16
antocuniI won't be online the whole day08:16
fijalAlex_Gaynor: I'll fix the jitviewer later today08:17
fijal (~fijal@197.171.46.198) left irc: Quit: Leaving08:17
Ademanis there a way to create an annotation for a class at import time?08:20
antocunibah08:20
antocunithe problem with benchmarks is that the bitbucket's svn interface does not support symlinks08:21
Ademanactually that won't work anyways... ugh this is annoying08:22
ronnyoO08:23
sanxiyn (tinuviel@125.177.240.192) left #pypy (" tÌ Èä.").08:25
rokujyouhitoma (~rokujyouh@conference/rubykaigi/x-snvzqamurvkzjdwj) joined #pypy.08:27
kenaan12antocuni benchmarks 118c862863e7fb 15/own/util.py: kill the symlink, and use a python hack to share the content of util.py in both directories08:28
antocuniI'm going to kick a benchmark run on tannit, please don't run translations on it08:28
antocuni(or stop the build if you really need to do so)\08:29
apollo13 (~apollo13@unaffiliated/apollo13) left irc: Read error: Operation timed out08:31
apollo13 (~apollo13@unaffiliated/apollo13) joined #pypy.08:35
tlynn_ (~tlynn@cpc6-cmbg14-2-0-cust121.5-4.cable.virginmedia.com) joined #pypy.08:37
ousado (~ousado@31.18.108.77) left irc: Ping timeout: 264 seconds08:57
rokujyouhitoma (~rokujyouh@conference/rubykaigi/x-snvzqamurvkzjdwj) left irc: Quit: rokujyouhitoma09:12
rokujyouhitoma (~rokujyouh@conference/rubykaigi/x-mtgxsscshhvpcnts) joined #pypy.09:12
Kami_ (~kami@unaffiliated/kami-/x-9078513) left irc: Excess Flood09:15
mvt (~mvantelli@53530442.cm-6-4a.dynamic.ziggo.nl) joined #pypy.09:16
Kami_ (~kami@unaffiliated/kami-/x-9078513) joined #pypy.09:16
rokujyouhitoma_ (~rokujyouh@conference/rubykaigi/x-omrptfbqqqzlibzh) joined #pypy.09:24
rokujyouhitoma (~rokujyouh@conference/rubykaigi/x-mtgxsscshhvpcnts) left irc: Read error: Connection reset by peer09:24
Nick change: rokujyouhitoma_ -> rokujyouhitoma09:24
cfbolz (~cfbolz@dslb-188-108-231-232.pools.arcor-ip.net) joined #pypy.09:26
cfbolzhello09:26
rokujyouhitoma_ (~rokujyouh@conference/rubykaigi/x-wvklhhaezipshdjv) joined #pypy.09:27
rokujyouhitoma (~rokujyouh@conference/rubykaigi/x-omrptfbqqqzlibzh) left irc: Read error: Connection reset by peer09:27
Nick change: rokujyouhitoma_ -> rokujyouhitoma09:27
xorAxAxhi cfbolz, still sprinting? :)09:29
cfbolzno09:31
cfbolzfinished yesterday09:31
rokujyouhitoma (~rokujyouh@conference/rubykaigi/x-wvklhhaezipshdjv) left irc: Quit: rokujyouhitoma09:33
kenaan12cfbolz faster-nested-scopes 11c6b24da7b2b9 15/pypy/objspace/flow/: fix flow space. needs a slightly annoying hack09:40
Kami_ (~kami@unaffiliated/kami-/x-9078513) left irc: Quit: Off09:43
Kami_ (~kami@unaffiliated/kami-/x-9078513) joined #pypy.09:43
kenaan12cfbolz faster-nested-scopes 115994465ca0d0 15/pypy/module/cpyext/frameobject.py: fix cpyext09:50
nirbheek (~nirbheek@gentoo/developer/flyingspaghettimonster/nirbheek) joined #pypy.09:55
nirbheek (~nirbheek@gentoo/developer/flyingspaghettimonster/nirbheek) left irc: Read error: Connection reset by peer10:02
lac (~lac@m83-178-21-44.cust.tele2.se) left irc: Read error: Connection reset by peer10:03
Trundle (~andy@dslb-178-002-050-160.pools.arcor-ip.net) joined #pypy.10:11
Trundle (~andy@dslb-178-002-050-160.pools.arcor-ip.net) left irc: Changing host10:11
Trundle (~andy@python/site-packages/trundle) joined #pypy.10:11
Sho_ (~EHS1@kde/hein) left irc: Quit: Stop leaking memory like it's going out of fashion.10:15
nirbheek (~nirbheek@gentoo/developer/flyingspaghettimonster/nirbheek) joined #pypy.10:20
cfbolzantocuni: ping?10:21
nirbheek (~nirbheek@gentoo/developer/flyingspaghettimonster/nirbheek) left irc: Read error: Connection reset by peer10:21
antocunicfbolz: semi-pong10:37
antocuni(going to lunch very soon)10:37
antocunilike, right now :-)10:38
Action: antocuni afk10:38
donri (~donri@unaffiliated/dagodenhall) left irc: Remote host closed the connection10:55
pedronis (~pedronis@73-53.195-178.cust.bluewin.ch) left irc: Quit: Leaving11:07
kenaan12cfbolz default 110eee4b30304a 15/pypy/jit/metainterp/test/test_ajit.py: typo11:08
mitsuhikoAlex_Gaynor: found it?11:14
antocunicfbolz: pull pong, now :-)11:15
cfbolzantocuni: from time to time I have the following bug with pdb++11:15
cfbolzantocuni: I enter the name of a local var and get a name error11:16
cfbolzif I use interact, I can access the local var11:16
antocunicfbolz: I think if you have an old version of pdb++11:16
cfbolzah11:16
antocuniwhich version is it?11:16
cfbolz0.7, I think11:17
antocuniuhm, then it should be fixed11:17
cfbolzhm11:17
antocunithe previous error like the one you describe was only with python 2.7 and if you do "up"11:17
cfbolzah, I see the problem11:17
cfbolzyes11:17
cfbolzpypy has an older pdb++ installed :-)11:17
antocuniah :-)11:18
antocunigood11:18
cfbolzthat explains why I mostly see it when translating11:18
antocunipff, benchmarks died again :-(11:18
antocunihttp://buildbot.pypy.org/builders/jit-benchmark-linux-x86-32/builds/784/steps/shell_7/logs/stdio11:18
cfbolzeh11:19
cfbolztime to kill waf? :-)11:19
antocunimaybe11:19
antocunithe concrete problem is probably that bitbucket's svn does not support permissions11:19
antocuniso some file is checked out as non-executable11:19
cfbolzwell11:19
cfbolzbtw, 72d3b692033c made translate of targetrpystonedalone 10% faster11:20
cfbolzand reduces the size of non-optimized traces by 45%11:20
antocuninice11:21
antocuniI suppose that the performance improvement comes from the reduced gc pressure?11:21
cfbolzand faster optimization11:22
antocuniright11:22
antocuniuhm, I wonder if we should adjust the trace_limit now11:22
antocunibecause if it's actually 45% less, we are going to trace much more than before11:22
cfbolzgood? :)11:22
antocunimaybe, I don't know11:23
cfbolzantocuni: I will try another one or two minimally invasive optimizations during tracing11:23
antocuniwe should have a buildbot job that regularly tries to play with the various thresholds, to find the optimal ones :-)11:23
cfbolzI think trying that pays off much better than trying the full thing11:23
antocunicfbolz: instead of doing the full optimization twice?11:24
cfbolzyes11:24
antocunimaybe11:24
antocunibut e.g. you don't get rid of virtuals11:24
antocunicfbolz: anyway, are you fine if I just kill waf?11:24
cfbolzyes11:25
Action: antocuni kills11:25
cfbolzantocuni: yes, but getting rid of virtuals is a several weeks development job11:26
antocunibecause of the mess in resume.py?11:26
cfbolzit's not a mess right now :-)11:26
cfbolzit's just very hard to change11:26
antocuni:-)11:26
antocuniok11:26
antocuniactually, I didn't look at it11:26
antocunibut if you think it's so hard, I suppose you are right11:27
cfbolzanother thing to consider is to that if you look at nonopt traces, the bulk of operations doesn't come from virtuals11:28
cfbolzor, more precisely11:28
cfbolza huge amount of operations come from *frames* of inlined functions11:29
kenaan12antocuni benchmarks 11b3ba07245ff9 15/: kill the waf benchmark; it's broken right now, and we decided that it's not interesting11:29
antocunicfbolz: exactly, but frames of inlined functions becomes virtuals11:29
cfbolzyes, I know11:29
cfbolzbut it's not generalized virtuals at all11:29
cfbolzjust virtual frames11:30
antocuniso, you are proposing a special trace-time pass which just kills virtual frames?11:30
cfbolzthat would be one option, yes11:30
Action: antocuni kicks a benchmark run on tannit11:30
antocunido you have something precise in mind or it's just a vague idea?11:31
cfbolzantocuni: right now I am trying a different hack11:31
cfbolzantocuni: basically the heap optimization is easier to do during tracing than virtuals11:32
cfbolzbecause it has no interaction with resume data11:32
cfbolzand it has some of the effects of virtuals11:32
cfbolz(it gets rid of getfields, but not of setfields and news)11:32
antocuniah, I see11:32
cfbolzso I am trying a very very simple heap cache11:32
antocunibut the drawback of this approach is that we are essentially writing some optimizations twice11:33
antocuniwhat about using the actual code from optimizeopt/heap.py ?11:33
cfbolzwe already do that a lot11:34
cfbolze.g. pyjitpl does constant folding11:34
antocunithat's not a good excuse to do more :-)11:34
ronnyhmm, is there any reason why file considers pyc files by pypy data while pyc files by cpython as compiled python bytecode?11:34
antocunironny: yes, because we use a different magic number11:35
antocuniand probably file does not know about it11:35
cfbolzantocuni: yes, I know. but the two optimizations serve very different purposes and are implemented with different trade-offs in mind11:36
antocunitrue enough11:36
cfbolzanyway, I'll simply try11:36
antocuniwell, I suppose that if the cache is "very very simple", it might be worth11:36
cfbolzthat's the plan11:36
antocuniok11:37
ronnyantocuni: is there any other difference?11:37
antocunironny: I don't think so11:37
cfbolzronny: we have slightly different bytecode sets11:37
antocuniyes, but "file" should not care about them11:38
cfbolzright11:38
stakkars_ (~tismer@91-66-101-126-dynip.superkabel.de) joined #pypy.11:45
fox__ (~fox@host42-106-dynamic.14-87-r.retail.telecomitalia.it) joined #pypy.11:47
tlynn_ (~tlynn@cpc6-cmbg14-2-0-cust121.5-4.cable.virginmedia.com) left irc: Ping timeout: 255 seconds11:51
ousado (~ousado@31.18.130.130) joined #pypy.11:55
lucian (~lucian@78-86-217-168.zone2.bethere.co.uk) joined #pypy.11:55
LoganLK (~LoganLK@202-180-111-127.callplus.net.nz) left irc: Quit: LoganLK11:59
tlynn_ (~tlynn@cpc6-cmbg14-2-0-cust121.5-4.cable.virginmedia.com) joined #pypy.12:02
santagada (~santagada@c925bcc7.virtua.com.br) joined #pypy.12:07
mcdonc (~mcdonc@ip72-209-213-54.dc.dc.cox.net) left irc: Remote host closed the connection12:10
candrea (~andrea@host251-99-dynamic.24-79-r.retail.telecomitalia.it) joined #pypy.12:11
candrea (~andrea@host251-99-dynamic.24-79-r.retail.telecomitalia.it) left irc: Changing host12:11
candrea (~andrea@ubuntu/member/beeseek.developer.andrea-bs) joined #pypy.12:11
mcdonc (~mcdonc@ip72-209-213-54.dc.dc.cox.net) joined #pypy.12:13
zk (~is@adsl-66-140-73-70.dsl.kscymo.swbell.net) got netsplit.12:17
bfirsh (~bfirsh@mini.firshman.co.uk) got netsplit.12:17
Rhyolite (~dje@pool-108-6-25-71.nycmny.fios.verizon.net) got netsplit.12:17
crakdmirror (~crakdmirr@174.127.114.26) got netsplit.12:17
hongminhee (~dahlia@175.125.21.72) got netsplit.12:17
mkhan (~mkhan@122.167.122.135) joined #pypy.12:18
zk (~is@adsl-66-140-73-70.dsl.kscymo.swbell.net) returned to #pypy.12:19
crakdmirror (~crakdmirr@174.127.114.26) returned to #pypy.12:19
bfirsh (~bfirsh@mini.firshman.co.uk) returned to #pypy.12:19
Rhyolite (~dje@pool-108-6-25-71.nycmny.fios.verizon.net) returned to #pypy.12:19
hongminhee (~dahlia@175.125.21.72) returned to #pypy.12:19
derdon (~derdon@p579CC747.dip.t-dialin.net) joined #pypy.12:20
name (~name@chello080108038152.1.11.vie.surfer.at) joined #pypy.12:27
name (~name@chello080108038152.1.11.vie.surfer.at) left irc: Changing host12:27
name (~name@sburn/devel/name) joined #pypy.12:27
name (~name@sburn/devel/name) left irc: Remote host closed the connection12:28
kenaan12cfbolz heap-caching-during-tracing 11be79442107df 15/pypy/jit/metainterp/: add a minimal heap cache to be used when tracing12:33
antocunigood, the benchmark run worked well this time12:46
antocunibut now we have very high variations: http://speed.pypy.org/changes/12:46
antocunilike, ~20% speedup on raytrace-simple and spectral-norm12:47
antocuniand 64% slowdown on go12:47
neppord (~neppord@c-92f8e455.239-8-64736c10.cust.bredbandsbolaget.se) joined #pypy.12:49
neppordhi pople12:50
derdon (~derdon@p579CC747.dip.t-dialin.net) left irc: Remote host closed the connection12:51
stakkars_antocuni: is this related to the heap-caching checkin?12:53
antocunistakkars_: no, it's just that we did not run benchmarks for few days12:53
stakkars_ah, coincidence.12:54
mvt (~mvantelli@53530442.cm-6-4a.dynamic.ziggo.nl) left irc: Quit: This computer has gone to sleep12:55
stakkars_antocuni: are you working from Italy, btw.?12:55
antocuniyes12:55
stakkars_ok. For some reason I thought you were in Sweden. 12:56
Action: antocuni off12:57
antocunibye!12:57
stakkars_this came from earlier info12:57
stakkars_bye12:57
stakkars_ (tismer@91-66-101-126-dynip.superkabel.de) left #pypy.12:59
kenaan12hakanardo jit-short_from_state 11a8eedb9a9b64 15/pypy/jit/metainterp/optimizeopt/: Some extra debug prints. Make optimize_STRLEN keep the original result box if the strlen op is emi...12:59
antocuni (~antocuni@host150-71-dynamic.58-82-r.retail.telecomitalia.it) left irc: Ping timeout: 276 seconds13:03
santagada_ (~santagada@c925bcc7.virtua.com.br) joined #pypy.13:10
santagada (~santagada@c925bcc7.virtua.com.br) left irc: Read error: Connection reset by peer13:10
stakkars_ (~tismer@91-66-101-126-dynip.superkabel.de) joined #pypy.13:11
CIA-5503timo 07roundup * 10#706/`import pybrain` fails in 1.5 on OSX: 13:14
CIA-55[chatting] you need to install pybrain using pypy. pypy will not use the site-packages13:14
CIA-55folder from python (especially not from python2.6, as pyp ... * 14https://bugs.pypy.org/issue70613:14
DasIch_ (~DasIch@p4FFDCB61.dip.t-dialin.net) joined #pypy.13:23
kkris (~kris@80-123-38-183.adsl.highway.telekom.at) joined #pypy.13:26
DasIch (~DasIch@p4FFDF1D0.dip.t-dialin.net) left irc: Ping timeout: 276 seconds13:27
CIA-5503timo 07roundup * 10#706/`import pybrain` fails in 1.5 on OSX: 13:40
CIA-55my apologies, i just tried it myself and you are going to run into another13:40
CIA-55problem: pybrain needs scipy, which pypy doesn't support yet, due to ... * 14https://bugs.pypy.org/issue70613:40
fijal_ (~fijal@197.104.46.98) joined #pypy.13:42
Nick change: fijal_ -> fijal13:42
fijalhi13:43
neppordhi13:44
tlynn_ (~tlynn@cpc6-cmbg14-2-0-cust121.5-4.cable.virginmedia.com) left irc: Ping timeout: 255 seconds13:44
fijalok, something went horribly wrong with benchmarks13:48
rokujyouhitoma (~rokujyouh@240f:11:fa84:1:21f:f3ff:fed7:c020) joined #pypy.14:00
arigato (~arigo@82.113.98.162) joined #pypy.14:04
rokujyouhitoma (~rokujyouh@240f:11:fa84:1:21f:f3ff:fed7:c020) left irc: Quit: rokujyouhitoma14:05
kenaan12arigo default 11eef75a4b072e 15/pypy/translator/c/gcc/trackgcroot.py: Write the progbits section magic marker to make the stack                       non-executable under (at least) Gen...14:07
fijal (~fijal@197.104.46.98) left irc: Ping timeout: 264 seconds14:07
tlynn_ (~tlynn@cpc6-cmbg14-2-0-cust121.5-4.cable.virginmedia.com) joined #pypy.14:11
kenaan12fijal default 11f12c4e733acd 15/pypy/: fix tests14:18
kenaan12fijal default 11eaa6922449c1 15/pypy/: Backed out changeset f12c4e733acd Ops, too much14:18
kenaan12fijal default 11a3c110ceadc2 15/pypy/tool/jitlogparser/: fix tests14:18
kenaan12fijal default 1130cdf33c3942 15/pypy/: merge14:18
neppord (~neppord@c-92f8e455.239-8-64736c10.cust.bredbandsbolaget.se) left irc: Quit: neppord14:19
neppord (~neppord@c-92f8e455.239-8-64736c10.cust.bredbandsbolaget.se) joined #pypy.14:23
fijal (~fijal@41.53.101.44) joined #pypy.14:24
mvt (~mvantelli@53530442.cm-6-4a.dynamic.ziggo.nl) joined #pypy.14:27
neppord (~neppord@c-92f8e455.239-8-64736c10.cust.bredbandsbolaget.se) left irc: Ping timeout: 260 seconds14:27
gutworth (~benjamin@64-131-13-109.usfamily.net) joined #pypy.14:29
CIA-5503albert 07roundup * 10#706/`import pybrain` fails in 1.5 on OSX: 14:29
CIA-55Yea...14:29
CIA-55The SciPy/Numpy functions which are used by PyBrain are also only very basics ones14:29
CIA-55(matrix multiplications, etc.), so it might be that ... * 14https://bugs.pypy.org/issue70614:29
kenaan12fijal default 11402d04acdc09 15/pypy/tool/jitlogparser/: Fix bug with regard to multiple loops at the same assembler piece. Make parsing assembler lazy (a bit ugly)14:30
tlynn_how's progress towards stackless-pypy-jit, does it depend on tealets and/or are tealets dead?14:31
fijalit's almost done14:32
timonatorthe last thing i've heard is tealets is the future and very much alive14:32
fijalyou can get it if you get a correct branch14:32
timonatorhey, fijal, scipy fails installing very early, because numpy.distutils or some such is missing14:32
fijaltimonator: you kind of don't want to install scipy14:32
fijalfor a varierty of reasons14:33
tlynn_sweet. alas, my machine would probably take over a day to build it.  I suppose I could try though.14:33
fijalhow much ram do you have?14:34
timonatorfijal: why not? pybrain needs its14:34
tlynn_a mere 2GB14:34
fijaltlynn_: you should be good on 32bit14:35
fijaltimonator: needs what from scipy?14:35
tlynn_Windows, Linux or both?14:35
CIA-5503fijal 07roundup * 10#706/`import pybrain` fails in 1.5 on OSX: On Sat, Jul 16, 2011 at 3:45 PM, Albert Zeyer <tracker@bugs.pypy.org> wrote: > > Albert Zeyer <albzey@gmail.com> added the comment: > > Yea... > > ... * 14https://bugs.pypy.org/issue70614:36
fijaltlynn_: both14:36
timonatorit imports reshape, dot, outer early on14:37
neppord (~neppord@c-92f8e455.239-8-64736c10.cust.bredbandsbolaget.se) joined #pypy.14:37
fijalyes from numpy14:37
fijalbut what from scipy?14:37
timonatorno, the line is from scipy import reshape, dot, outer14:37
fijalok, can you look what they do?14:38
timonatorhm, not really that interested in pybrain actually :o14:38
fijalwell, really14:39
fijal"using just a few simple functions"14:39
fijalis a claim14:39
fijaland requires evidence14:39
fijalAlex_Gaynor: I fixed the jitviewer14:41
fijalI fear at some point I'll have to get back and refactor it a bit14:41
kenaan12fijal jitviewer 116159d4330dce 15/bin/jitviewer.py: use the lazy loading of loops14:41
neppord (~neppord@c-92f8e455.239-8-64736c10.cust.bredbandsbolaget.se) left irc: Ping timeout: 252 seconds14:41
fijalhm14:44
fijalcan I get a history of a single branch?14:45
rokujyouhitoma (~rokujyouh@p8443d1.tokynt01.ap.so-net.ne.jp) joined #pypy.14:45
tlynn_fijal, you can on bitbucket so I presume there's an equivalent cmdline ui 14:47
tlynn_e.g. https://bitbucket.org/pypy/pypy/changesets/tip/branch(tealet)14:48
tlynn_which I was on since I'm looking for which branch to build for stackless-jit?14:49
fijalyes14:49
fijal--stackless -Ojit14:49
fijalmaybe --gcstackrootfinder=shadowstack14:49
fijaler no14:49
fijalno --stackless :)14:49
tlynn_on branch tealet?14:49
fijal--tealet14:49
fijalyes14:49
neppord (~neppord@c-92f8e455.239-8-64736c10.cust.bredbandsbolaget.se) joined #pypy.14:49
tlynn_cool, ta14:49
tlynn_so just to be clear, "--stackless --tealet -Ojit"?14:50
leemp (47d200e8@gateway/web/freenode/ip.71.210.0.232) joined #pypy.14:50
fijalno, no --stackless14:50
fijal--tealet -Ojit14:50
tlynn_k, ta14:50
timonatorfijal: the "using just a few simple functions" claim wasn't made by me, though14:51
timonatorso i suppose i'm off the hook14:51
fijalok14:52
leempQuick question. How is pypy's versioning decided? Eg.. right now it's based off of 2.x right? When will that change (from say 2.5 to 2.7, or 2.7 to 3.2)? And as a developer, how will i know which python version my instance of pypy is based off of?14:52
fijalsys.version tells you 2.714:53
fijalor sys.version_info14:53
fijalthis is a version of Python that it supports14:53
fijaldo you also need a version of pypy?14:53
neppord (~neppord@c-92f8e455.239-8-64736c10.cust.bredbandsbolaget.se) left irc: Ping timeout: 252 seconds14:54
leempk. So does the pypy crew try to stay up to date with the cpython versioning? Eg, if python 2.8 is released, will they push pypy to 2.8?14:54
Rhyoliteleemp: are you asking how to find the version through introspection or how support for a particular version of CPython is chosen?14:54
rokujyouhitoma (~rokujyouh@p8443d1.tokynt01.ap.so-net.ne.jp) left irc: Quit: rokujyouhitoma14:54
fijalleemp: 2.8 will never be released14:55
fijaland we're a bit undecided what to do with python 314:55
leempFor example i mean14:55
fijalwell, I'm giving you a very precise answer :)14:55
fijal2.7 is the last of 2.x series14:55
leempWell 3.x is a huge undertaking, different case imo. 14:55
fijalso we're on 2.7 and we're happy14:55
timonatori've been burnt pretty badly by python2's strange unicode support14:56
Rhyoliteand other than timonator, most PyPy users are happy ;-)14:57
timonatori'd like to have python3 for string/bytes thingie14:57
tlynn_fijal: so is there a separate method for getting the pypy version?14:57
timonatorwell, it was cpython, though, but not because of the implementation, because of the specification14:57
fijaltlynn_: yeah14:57
leempfijal: True, but it's besides the point :P. I'm asking if pypy trys to stay up to date in that regard :P, but i guess it's a question that will only pop up if they decide to hop into the 3.x line aswell14:57
fijalyes exactly14:57
fijalwe stayed pretty much up-to-date module a year or two14:58
leempRighto :)14:58
fijaltlynn_: sys.pypy_version_info14:58
tlynn_thanks14:58
Action: gutworth can arrange to have pypy 3.x for a small sum :)14:58
fijaltimonator: here we go, you can pay gutworth14:58
timonatorhaha, a small sum? what's that? a thousand euros? :)14:59
fijalgutworth: can you arrange to have missing codecs?14:59
leempAlso, regarding --sandbox, how much should it be trusted? Is it pretty bleeding edge and possibly has quite a few holes? Or are security issues not currently known?14:59
fijalleemp: it's pretty much secure by design15:00
arigatoit's not really well tested, but on the other hand it's completely secure, as far as I know15:00
timonatorleemp: it wouldn't appear to me, that it would have problems15:00
leemp--sandbox is my favorite thing about pypy. I was *very* happy to hear you guys did that :D15:00
fijalleemp: I would trust it much more than anything else that's available and has been tested15:00
leempYea15:00
fijalbecause it's designed better15:01
arigatowell the option to limit the amount of memory may not be completely secure15:01
fijalarigato: hi15:01
tlynn_good point - since I'm about to kick off a build, should I expect "--tealet -Ojit --sandbox" to work?15:01
leempI read a long while back that they (a couple guys) started trying to make a secure cpython but it died quickly.15:01
timonatorit even does that linux system call that makes the process unable to do anything apart from accessing the file descriptors it already has open at that time15:01
Action: fijal is having fun staring at the assembler of operations15:01
arigato(I think this option does not limit e.g. the raw memory allocations, which on the other hand are probably rare in a sandboxed process)15:01
fijaltlynn_: --sandbox is not quite what you think it is15:01
fijaltlynn_: I don't know if it works with --tealet but it's less usable than a normal pypy-c15:02
tlynn_fijal, I understand the multiple processes separation15:02
timonatorfijal: is there a way to mechanically test the correctness of the sandbox translation?15:02
tlynn_to some degree15:02
fijaltimonator: it mechanically walks the graphs and replaces all of external calls15:02
fijalI think it is to some extent15:03
arigatotimonator: there is no way to mechanically find security bugs :-/15:03
mvt (~mvantelli@53530442.cm-6-4a.dynamic.ziggo.nl) left irc: Quit: This computer has gone to sleep15:03
arigato(unless the program was badly designed, maybe)15:03
fijalarigato: do you know how to get parents of some revision in hg15:03
fijal?15:03
timonatorright, that's what i feared15:04
arigatofijal: yes, with (guess) an extension15:04
arigatoparentrevspec15:04
timonatoroh, the sandbox transform should work on any rpython translation, won't it?15:04
fijalaha15:04
arigatofijal: then you can say e.g. "eef75a4b072e^"15:04
arigatowhich I find useful15:04
fijalhg parentrevspec eef75a4b072e^15:05
fijallike this?15:05
arigatono15:05
fijalI'm not sure I understand what you mean15:05
arigatoparentrevspec is the extension, but it adds syntax to revisions that you specify anywhere15:05
arigatoe.g. hg log eef75a4b072e^15:05
arigatoor hg up eef75a4b072e^15:05
fijalok15:06
fijalthanks15:06
arigatohg log -r eef75a4b072e^15:06
fijalso our lib-python tests timeouted threading tests...15:06
timonatorarigato: how exactly could a client program in a pypy sandbox get out of it by causing a segfault or similar? wouldn't that just kill the client, allowing the parent to just start up another sandbox?15:07
timonatori don't see how it could cause code to leak from inside the sandbox15:07
arigatotimonator: I don't either15:08
arigatoI was complaining that the option to limit the amount of RAM the pypy sandbox uses might not be completely reliable15:08
arigatonothing more15:09
timonatoroh, so you mean the amount of ram the sandbox could allocate could be much bigger than what the parent process wants?15:10
arigatoyes, in theory, although I'm not sure I see exactly how15:10
fijalarigato: can I kick the benchmark run?15:10
arigatofijal: feel free15:10
Action: arigato doesn't use tannit today15:10
fijalok15:11
fijalI'm fixing the benchmarks15:11
fijallast run was saved as pypy-c-jit although it was pypy-c15:11
arigato:-/15:11
tlynn_is pypy memory not measured on speed.pypy or am I missing it?15:12
fijaltlynn_: no15:12
fijalarigato: the goal is to stop benchmarking cpython and instead benchmark pypy-c vs pypy-c-jit15:13
kenaan12bivab arm-backend-2 1105def4b63047 15/pypy/jit/backend/arm/assembler.py: fix15:13
kenaan12bivab arm-backend-2 1157c5578f3895 15/pypy/: merge default15:13
kenaan12bivab arm-backend-2 115690763bfdba 15/pypy/jit/backend/arm/: add a check for the size of the value stored in size15:13
kenaan12bivab arm-backend-2 118ca230890525 15/pypy/: merge default15:13
fijaland then be able to do the same for 64bity15:13
fijalarigato: can you poke whoever-is-responsible to install pypy on windows machines?15:13
arigatofijal: and put manually once the speed of cpython?15:13
fijalwe do that anyway15:13
fijalwe don't upload cpython speed nightly15:13
arigatoso what do you mean?15:14
fijalwe run cpython15:14
fijaland then happily ignore the resutls15:14
fijal(twice a night)15:14
arigatoah15:14
arigatofijal: ENOTENOUGHINFO: what's the issue with pypy on windows machines?15:14
fijalI changed translate benchmark job to use pypy instead of cpython for translation15:15
fijalbut now we require all buildbots to have pypy installed15:15
arigatook15:16
kenaan12fijal benchmarks 111beaa1484ca2 15/own/chaos.py: remove name errors15:16
kenaan12fijal benchmarks 11a8836ad0cec7 15/:  improve uploading so we can benchmark pypy against pypy no jit15:16
arigatoon openend's windows server that's me15:16
fijalI think this is the only one we run15:17
fijalhttp://buildbot.pypy.org/builders/own-win-x86-3215:18
fijalthis has slave lost15:18
fijalhttp://buildbot.pypy.org/builders/pypy-c-jit-win-x86-3215:18
fijalthis requires pypy15:18
fijalthey use the same machine but the first one is not run nightly I think15:18
Action: arigato tries to fix15:19
neppord (~neppord@c-92f8e455.239-8-64736c10.cust.bredbandsbolaget.se) joined #pypy.15:21
neppordokey....15:21
fijalarigato: thank you!15:21
neppordis there any one who translates pypy on a mac?15:21
fijalneppord: yeah, a buildbot15:22
neppordok15:22
fijalarigato: are we also interested in benchmarks on os/x15:22
fijal?15:22
neppordso translate.py is complaining about that gcc-4.0 is not found15:22
fijalCC=...15:22
fijal?15:22
kenaan12fijal buildbot 116717b3a4b6a8 15/bot2/pypybuildbot/builds.py: clean up - now we dont benchmark cpython nightly twice15:22
neppordbut i gott gcc from Developer tools(Xcode)15:22
neppordcc=...?15:23
zk (~is@adsl-66-140-73-70.dsl.kscymo.swbell.net) left irc: Read error: Operation timed out15:23
neppordhttps://gist.github.com/108644415:25
neppordif you would be nice and just look at the last rows of the trace15:25
arigatoneppord: no, the issue is that your gcc is too recent15:26
neppordokay15:26
arigatoif you can't install gcc 4.0, then you have to translate with --gcrootfinder=shadowstack15:26
neppordhmmpf15:26
arigatowhich gives a 5-10% slowdown in the end15:26
neppordwhat is that15:26
fijalmeh :-/15:26
fijalcodespeed violates first normal form in the DB15:26
fijalor second15:26
nepporddoesent help15:27
neppordget the same error15:27
justinpeel (~nepo@c-76-23-44-72.hsd1.ut.comcast.net) joined #pypy.15:28
mvt (~mvantelli@53530442.cm-6-4a.dynamic.ziggo.nl) joined #pypy.15:29
fijaljustinpeel: hi15:29
justinpeelfijal: Hello15:29
fijaljustinpeel: started cleaning up your branch (separating things from one branch into different places that can be merged)15:29
fijalbut got called to do something else15:29
justinpeelthat's cool. I was thinking of doing the same15:29
justinpeelI'm having some struggles with setting slices15:30
fijalI guess the approach will be to create new branches15:30
fijallike numpy-ndim-size15:30
fijaland transplant revisions15:30
justinpeelyes, that's what I was thinking too15:30
fijalcool15:30
justinpeelhave you created any yet? I can set to it15:30
fijalno, I didn'15:30
fijalt15:30
justinpeelokay, I can work on that15:30
fijalbe back in 30min15:31
fijal (~fijal@41.53.101.44) left irc: Quit: Leaving15:31
arigatofijal: started: http://buildbot.pypy.org/builders/pypy-c-jit-win-x86-32/builds/123/steps/translate/logs/stdio15:32
justinpeel (~nepo@c-76-23-44-72.hsd1.ut.comcast.net) left irc: Ping timeout: 250 seconds15:36
tlynn_ (~tlynn@cpc6-cmbg14-2-0-cust121.5-4.cable.virginmedia.com) left irc: Quit: Leaving15:39
santagada_neppord: do you have xcode 4?15:40
Nick change: santagada_ -> santagada15:40
santagadaneppord: xcode 3.2 comes with gcc-4.0 and gcc-4.215:41
santagadaI would guess xcode 4 has them also15:41
santagadaneppord: either find out where gcc-4.0 is or try to make pypy translate with clang and shadowstack15:42
santagadamaybe it even works :)15:42
neppord (~neppord@c-92f8e455.239-8-64736c10.cust.bredbandsbolaget.se) left irc: Ping timeout: 252 seconds15:43
fijal (~fijal@196.24.41.254) joined #pypy.15:43
candrea (~andrea@ubuntu/member/beeseek.developer.andrea-bs) left irc: Quit: killall candrea15:44
Kaskuka (~John@osbk-4d08b9ef.pool.mediaWays.net) left irc: Ping timeout: 250 seconds15:45
santagada (~santagada@c925bcc7.virtua.com.br) left irc: Remote host closed the connection15:47
vokoda (~user@unaffiliated/vokoda) left irc: Remote host closed the connection15:48
neppord (~neppord@c-92f8e455.239-8-64736c10.cust.bredbandsbolaget.se) joined #pypy.15:48
neppordah with --cc=gcc and not --CC=gcc it worked15:53
fijalah no15:54
kans (~kans@c-98-236-30-13.hsd1.pa.comcast.net) joined #pypy.15:54
fijalI didn't say --CC15:54
fijalI said CC=15:54
fijalas in environmental variable15:54
neppordah15:54
fijalanyway, you *have to* specify --gcstackrootfinder=shadowstack15:54
fijalotherwise it'll crash later on15:54
neppordokay.. is ther info on why?15:54
neppordcause i would be intrested in trying other compiler then gcc at all..15:55
arigato--gcrootfinder=shadowstack15:58
Moku (~John@osbk-4db14691.pool.mediaWays.net) joined #pypy.15:59
alfa_y_omegao/, if 2.8 is released then it could be dangerous for the pypy's development, 2.8 could introduce its own bugs. However, pypy is verified for 2.7.x, and many apps work well for 2.7.x. There's not reason for migrating to 2.8 unless that it doesn't break the current pypy's development.16:03
justinpeel (~nepo@c-76-23-44-72.hsd1.ut.comcast.net) joined #pypy.16:07
fijaljustinpeel: ok, so you or me?16:09
justinpeelfijal: I'll do it. I've been busy irl the last while16:09
fijalhrhrhr16:09
Trundle (~andy@python/site-packages/trundle) left irc: Ping timeout: 246 seconds16:10
Trundle (~andy@dslb-178-002-050-160.pools.arcor-ip.net) joined #pypy.16:12
Trundle (~andy@dslb-178-002-050-160.pools.arcor-ip.net) left irc: Changing host16:12
Trundle (~andy@python/site-packages/trundle) joined #pypy.16:12
stakkars (~tismer@91-66-101-126-dynip.superkabel.de) left irc: Quit: schnarch16:13
Nick change: stakkars_ -> stakkars16:13
mvt (~mvantelli@53530442.cm-6-4a.dynamic.ziggo.nl) left irc: Quit: This computer has gone to sleep16:21
kenaan12fijal buildbot 11f1174e9107a5 15/bot2/pypybuildbot/builds.py: grrr, missing coma16:22
fijalarigato: can you install newer pypy as "pypy" on tannit?16:24
mvt (~mvantelli@53530442.cm-6-4a.dynamic.ziggo.nl) joined #pypy.16:24
fijalI mean globally16:24
fijalespecially in 32bit16:24
arigatowhich version do you want?16:25
fijalnightly?16:26
fijalI mean it would cut down our translation time significantly16:27
arigatook16:27
arigatohow significantly? :-)16:27
fijal2700s -> 1800s I think16:27
arigatouh16:27
arigatook16:27
fijalwasn't that what cfbolz measured?16:27
arigatoI don't know, when?16:27
cfbolznot quite that extreme16:27
cfbolz30% faster16:28
fijal30% you said16:28
fijalwell16:28
irmen (~irmen@razorvine.xs4all.nl) joined #pypy.16:28
fijalthat's 188916:28
fijals16:28
fijalok16:28
arigatodone on tannit32, if you want to try16:30
Action: fijal hopes buildbot will try16:32
arigatodone on tannit6416:32
fijalthx16:32
fijalI'll set up 64bit build and benchmarks if stuff works out16:33
arigatogood16:33
fijaldo we want os/x 64bit?16:33
fijalI have a machine16:33
arigatoif your machine is sure not to have random things running on it during the night, why not16:38
kenaan12justinpeel numpy-singledim 1129e15adb6915 15/pypy/module/micronumpy/: Added simple repr and str for ViewArrays16:38
kenaan12justinpeel numpy-ndim-size 11db28a9352aa2 15/pypy/module/micronumpy/: numpy: added ndim and size attributes. This includes work by Timo.16:38
justinpeelfijal: I haven't done anything on the ndim/size stuff since we talked yesterday16:39
justinpeeljust going to break everything apart first16:39
fijalyes, sounds good16:41
fijalarigato: yes, it's a laptop laying down in a corner16:41
fijalor so I was told16:41
cfbolzarigato: did you see 72d3b692033c btw?16:43
cfbolzit made translate of targetrpystonedalone 10% faster and reduces the size of non-optimized traces by 45%16:44
arigatobaaaaah16:45
cfbolz:-)16:45
cfbolzI learned a lot staring at some non-optimized traces yesterday on the train16:46
arigatoand I'm mostly loosing my day changing the API of tealets16:48
cfbolz:-(16:49
cfbolzarigato: trying to make all tealets the same?16:49
arigatoyes16:49
arigatoI've got a nice API now16:49
arigatobut implementing it is work16:50
cfbolzbecause the world changes16:51
arigatoand because I have to really read Kristjan's changes :-)16:53
kenaan12justinpeel numpy-repr-str 119e83042f6f27 15/pypy/module/micronumpy/: numpy: simple implementations of repr and str. includes work by Timo.16:54
cfbolzarigato: argh16:54
timonatorwiiiiiiiii16:55
timonatornot that i did much of anything :P16:55
fijalwell, we used to run mac benchmarks on os x on minime16:55
fijalI guess it never worked16:55
timonatorbut i'm glad we have size and ndim now16:55
justinpeelyeah, I've been making a mess of things17:00
justinpeelso I'm cleaning stuff up now17:00
Arc (arc@pysoy/developer/ArcRiley) left #pypy.17:05
irmen (~irmen@razorvine.xs4all.nl) left irc: Remote host closed the connection17:12
cfbolzarghh17:21
mvtfijal, is there documentation explaining how to run the benchmarks on my own machine? 17:23
mvtWant to compare shadowstack + clang vs gcc + asmgcc17:23
justinpeel (~nepo@c-76-23-44-72.hsd1.ut.comcast.net) left irc: Ping timeout: 258 seconds17:30
danchrmvt: on what platform?17:31
mvtosx17:32
danchrthese two links might make it a bit easier for you:17:33
danchrhttp://dl.dropbox.com/u/6706818/pypy/pypy-c-jit-45622-87c5f89a4e78-osx64.tar.bz2 http://dl.dropbox.com/u/6706818/pypy/pypy-c-jit-45622-87c5f89a4e78-osx64.tar.bz2 17:33
danchregh, they were the same, sorry17:33
mvtwell i already have them translated, just wanted to run both bechmarks17:33
danchrhttp://dl.dropbox.com/u/6706818/pypy/pypy-c-jit-45622-87c5f89a4e78-osx64-shadowstack-clang.tar.bz217:33
mvtthanks anyway :-)17:33
danchrI tried running the benchmarks on my mac about a week ago; for some reason, many of them failed17:33
mvtany hints on what command i have to run?17:34
danchrsome were much slower17:34
danchrlemme check my shell history17:34
danchrI did:17:35
danchrPYTHONPATH='' pypy ./runner.py -b 'richards,slowspitfire,ai,pyflate-fast,fannkuch,telco,meteor-contest,float,chaos,nbody_modified,spectral-norm,crypto_pyaes,raytrace-simple,go,waf' --baseline /tmp/pypy-c-jit-45137-65b1ed60d7da-osx64/bin/pypy -p /tmp/pypy-c-jit-45137-65b1ed60d7da-osx64-shadowstack-clang/bin/pypy17:35
mvtok17:35
danchrI believe I just cloned the PyPy benchmarks repository17:35
leemp (47d200e8@gateway/web/freenode/ip.71.210.0.232) left irc: Quit: Page closed17:36
mkhan (~mkhan@122.167.122.135) left irc: Quit: mkhan17:41
danchralso, the most macro of all benchmarks, a full self-host: http://dl.dropbox.com/u/6706818/pypy/pypy-timings.txt17:42
danchr(which was ~2% slower)17:42
mvtrunning now :-)17:42
danchrI should update the bug I filed with those results&17:42
mkhan (~mkhan@122.167.122.135) joined #pypy.17:42
Kami_ (~kami@unaffiliated/kami-/x-9078513) left irc: Excess Flood17:43
CIA-5503danchr 07roundup * 10#766/Shadowstack root finder should be competitive with asmgcc in speed: 17:43
CIA-55[chatting] I did another benchmark run a couple of days ago; a full self-hosting translation17:43
CIA-55of PyPy. Shadowstack did it ~2% slower, but that's ... * 14https://bugs.pypy.org/issue76617:43
Kami_ (~kami@unaffiliated/kami-/x-9078513) joined #pypy.17:43
kenaan12cfbolz default 11e5d0029d562d 15/pypy/jit/metainterp/optimizeopt/: bug in lazy setarrayitem. test and fix17:45
cfbolzarigato: could you review this commit please?17:45
danchrmvt: are the results in yet? :)17:50
arigatocfbolz: done...17:53
cfbolzarigato: makes sense?17:53
arigatoit seems to be a different way of doing what was already done in emitting_operation17:53
arigatothere, force_lazy_setarrayitem is followed by "for ... : cf._cached_fields.clear()"17:53
cfbolzah, so I should maybe replace this with force_lazy_setarrayitem(..., can_cache=False) there?17:54
arigatoyes, it seems to make sense17:55
arigatobut the code is not completely equivalent17:55
cfbolzno17:55
mvtdanchr, http://paste.pocoo.org/show/DubYLIRXJMFZRetE6aEf/ (shadowstack + clangs against python 2.7)17:57
arigatocfbolz: now I *think* that your patch is not enough17:57
cfbolz:-(17:57
danchrmvt: wouldn't it be the shadowstack+clang vs. asmgcc results that are really interesting?17:57
arigatocfbolz: yes, because if self._lazy_setfield is None, then the self._cached_fields are not cleared17:58
mvtyeah will be there retranslating the asmgcc version (accidently removed it.. ;-)17:58
danchrheh17:58
cfbolzarigato: ah, right17:58
danchrmvt: what sort of machine is this on?17:59
arigatocfbolz: try to write a test where there are only getarrayitem_gc(p0 ,0) before the setarrayitem_gc(p0, i1)17:59
cfbolzyes17:59
mvtdanchr, macbookpro i5 2.4ghz / 8gb18:00
danchrheh, want18:00
arigatocfbolz: what about adding to OptHead.force_lazy_set{field,array} a can_cache flag, but not passing it, instead just doing the .clear() afterwards?18:01
irmen (~irmen@razorvine.xs4all.nl) joined #pypy.18:01
arigatocfbolz: it would make sense because right now you can get two KeyErrors one after the other18:01
cfbolzarigato: I don't follow18:01
cfbolzarigato: I guess if you fix it it is faster than telling me :-)18:01
arigatothen let me try :-)18:02
cfbolzarigato: I wrote the test18:02
danchrmvt: I think shadowstack is a bit less stable on Mac OS X, though  I've seen the odd segfault now and then18:02
cfbolzcheckin coming18:02
danchrI get this when running bm_mako on my mac, any idea what it's about?  http://paste.pocoo.org/show/44025318:03
arigatocfbolz: thanks18:04
kenaan12cfbolz default 118327f6fea2b2 15/pypy/jit/metainterp/optimizeopt/test/test_optimizebasic.py: broken test (armin will try to fix it)18:04
Trundle (~andy@python/site-packages/trundle) left irc: Remote host closed the connection18:06
kenaan12arigo default 11e911b2205846 15/pypy/jit/metainterp/optimizeopt/heap.py: Fix the test by always clear()ing _cache_fields if can_cache=False.  Rewrote some redundant try:except KeyError: co...18:08
kenaan12cfbolz heap-caching-during-tracing 11afd433b6fc94 15/pypy/jit/metainterp/: setarrayitem does not influence the heap cache18:12
kenaan12cfbolz heap-caching-during-tracing 11aacbf098fe2c 15/pypy/jit/metainterp/: intermediate checkin: starting an array cache. stopped by a bug on trunk.18:12
kenaan12cfbolz heap-caching-during-tracing 11b60a9b13da69 15/pypy/: merge default18:12
kenaan12cfbolz heap-caching-during-tracing 11e617ed3242d8 15/pypy/jit/metainterp/optimizeopt/: merge18:12
kenaan12cfbolz heap-caching-during-tracing 11feafe98006d1 15/pypy/jit/metainterp/pyjitpl.py: fix second half of the test18:12
fox__ (~fox@host42-106-dynamic.14-87-r.retail.telecomitalia.it) left irc: Ping timeout: 258 seconds18:12
cfbolzarigato: makes sense18:12
fox__ (~fox@host132-110-dynamic.8-87-r.retail.telecomitalia.it) joined #pypy.18:13
danchrcfbolz: do you have an idea what might cause the trace I pasted earlier?18:15
cfbolzdanchr: nope, sorry18:16
danchrit's weird that the benchmarks should fail on Mac OS X only&18:16
mvtdanchr, all benchmarks worked for me18:17
danchrmvt: really? perhaps it's something about my setup, then&18:17
danchrdid you list the benchmarks with -b?18:18
mvtused your cmdline18:18
danchryeah, I filtered out the ones that crashed18:18
danchrcould you try e.g. -b mako?18:18
mvtok18:18
mvtsame error18:19
danchrmy results: http://paste.pocoo.org/show/440259/18:20
danchrinterestingly, ai is now faster :)18:20
kenaan12cfbolz faster-nested-scopes 11623f7c22e667 15/pypy/: merge default18:22
justinpeel (~nepo@c-76-23-44-72.hsd1.ut.comcast.net) joined #pypy.18:23
justinpeelfijal: I got quite a bit of the slicing stuff working, but I can't seem to get things like arr[::2][::-1] = 218:25
justinpeelit seems to me that it would first create the slice arr[::2] and call setitem with a slice on it..18:25
justinpeelarrview = arr[::2][::-1]; arrview[:] = 2 works right now though..18:27
neppord (~neppord@c-92f8e455.239-8-64736c10.cust.bredbandsbolaget.se) left irc: Quit: neppord18:43
lucian (~lucian@78-86-217-168.zone2.bethere.co.uk) left irc: Remote host closed the connection18:46
Alex_Gaynorarigato: did you see my deadlock bug?18:47
arigatono18:47
Alex_Gaynorok, it's in the tracker, I have no clue what's causing it, my current theory is race condition that shows up in threading.py because we are faster18:48
Alex_Gaynormitsuhiko: no I ahven't solved it yet18:48
kenaan12justinpeel numpy-setslice 119d55cebe8768 15/pypy/module/micronumpy/: numpy: setslice added but doesn't work correctly for setting a slice of a slice yet18:49
justinpeel (~nepo@c-76-23-44-72.hsd1.ut.comcast.net) left irc: Ping timeout: 258 seconds18:53
durin42 (~durin@adium/durin42) left irc: Quit: leaving18:57
irmen (irmen@razorvine.xs4all.nl) left #pypy.19:07
Alex_Gaynorfijal: is there anyway we can have the logs do somthing smarter when you have uint_ge(-1, i0), specifically I want it to show the (unsigned long)-119:17
Kami_ (~kami@unaffiliated/kami-/x-9078513) left irc: Quit: Off19:24
Kami_ (~kami@unaffiliated/kami-/x-9078513) joined #pypy.19:24
LoganLK (~LoganLK@202-180-111-127.callplus.net.nz) joined #pypy.19:29
mvt (~mvantelli@53530442.cm-6-4a.dynamic.ziggo.nl) left irc: Quit: This computer has gone to sleep19:32
crakdmirror (~crakdmirr@174.127.114.26) left irc: Ping timeout: 252 seconds19:33
crakdmirror (~crakdmirr@174.127.114.26) joined #pypy.19:34
_main_ (~main@adsl-99-173-15-158.dsl.pltn13.sbcglobal.net) left irc: Ping timeout: 246 seconds19:35
__main__ (~main@adsl-99-173-15-158.dsl.pltn13.sbcglobal.net) joined #pypy.19:39
cousteau (~cousteau@80.174.59.133.dyn.user.ono.com) joined #pypy.19:43
cousteauhi, I ahve some questions about PyPy19:44
cousteaufirst: why isn't the logo an Auryn?19:44
Alex_Gaynorwhat as Auryn19:44
cousteauhttp://en.wikipedia.org/wiki/The_Neverending_Story#AURYN19:46
Alex_GaynorBecause an Ouroboros is more appropriate I think http://en.wikipedia.org/wiki/Ouroboros19:46
mvt (~mvantelli@53530442.cm-6-4a.dynamic.ziggo.nl) joined #pypy.19:47
cousteauoh, so it also exists... well, now I know where the Auryn was inspired on :)19:47
arigatoone Auryn == two Ouroboros...19:47
cousteausecond, is PyPy supposed to be able to run any Python program out of the box?19:48
Alex_Gaynorany pure python program, that doesn't rely on implementation details of CPython, yes19:49
cousteaueven with .so modules?19:50
Alex_Gaynorno, CPython C-Extensions do not fall under such a claim, they may work, but they are sow19:50
arigato...slow19:50
Alex_Gaynoryes :)19:51
cousteaubut they may work... interesting19:51
Action: fijal back19:52
fijalAlex_Gaynor: it'19:52
fijals all software, you can do them whatever :)19:52
Alex_Gaynorfijal: pff, I meant is it sane19:52
cousteauthird, do I need Python in order to run PyPy?19:54
Alex_Gaynorno, you do not need CPython to run a pypy binary19:55
cousteau(cause I doubt PyPy "runs itself")19:55
mvtdanchr, see http://paste.pocoo.org/show/rTE982MptcWFWvgwj08N/19:55
Alex_Gaynorfijal: we need virtual dicts I guess, Django has some hilarious nonsense (not worse than CPython, but it's nonsense all the same)19:55
Alex_GaynorI still have a bit no clue why this is slower19:55
fijalvirtual dicts are coming19:57
fijalstay tuned19:57
cfbolzAlex_Gaynor: for actual applevel dicts?19:58
Alex_Gaynorfijal: well they're easy with a combinatino of what you're doing, and optimizations in the frontend19:58
Alex_Gaynorcfbolz: yes19:58
cfbolzor stuff like **args19:58
Alex_Gaynor**args in this case19:58
Alex_Gaynoras long as they have constant keys @unroll_if_virtual should magically work19:58
Alex_Gaynorif it existed19:58
cfbolzI think then a dict impl for **args would be better19:59
Alex_Gaynorwhen you say **args do you mean call_func(**random_dict) or call_func(k=1, v=2, c=4) and def call_func(**kwargs)20:00
kenaan12cfbolz heap-caching-during-tracing 11420fc8c6b8cd 15/pypy/jit/metainterp/: proper invalidation for the array cache20:00
kenaan12cfbolz heap-caching-during-tracing 11ca2a85b7eef9 15/pypy/jit/metainterp/test/test_tracingopts.py: a passing test20:00
kenaan12cfbolz heap-caching-during-tracing 1122dc9cdf9e06 15/pypy/jit/metainterp/: make promotion influence the heap cache20:00
cfbolzAlex_Gaynor: yes20:00
Alex_Gaynorwhich one, or both20:00
arigatophew, I'm getting through the tealet refactoring20:00
cfbolzAlex_Gaynor: ah, I guess I mean the latter mostly20:00
Alex_Gaynoryes, that's the one that is speed-up-able I think20:01
Alex_Gaynorcfbolz: btw any plans to merge your global and closure branches?20:01
Action: fijal mumbles about getting benchmarks in order20:01
Alex_Gaynorfijal: I looked at mako, I have a bit no clue.  traces are the same before and after exactly.  I don't see how allowing inlining into something which is never called can affect it20:02
fijaltouch-the-world...20:02
fijalI don't know20:02
Trundle (~andy@python/site-packages/trundle) joined #pypy.20:02
Alex_Gaynorindeed20:03
cfbolzAlex_Gaynor: about merging: no clue. both are "nearly ready"20:03
Alex_Gaynorok20:04
cousteauaww, bpython doesn't work... guess I'll need at least some kind of setup to make it work20:05
fox__ (~fox@host132-110-dynamic.8-87-r.retail.telecomitalia.it) left irc: Ping timeout: 252 seconds20:05
arigatobpython isn't all pure Python?  (does it rely on custom .so's?)20:06
arigatoor else, I guess the best question is: what error do you get? :-)20:06
fox__ (~fox@host145-107-dynamic.8-87-r.retail.telecomitalia.it) joined #pypy.20:07
Alex_Gaynorcfbolz: these are kind of a lot of code duplication, aren't they?20:07
cfbolzhttp://darrenjw.wordpress.com/2011/07/16/gibbs-sampler-in-various-languages-revisited/20:07
kenaan12fijal benchmarks 110893b0a1eea4 15/saveresults.py: oops20:07
cfbolzAlex_Gaynor: these=?20:07
Alex_Gaynorcfbolz: manual optimizations in frntnend20:07
Alex_Gaynorfrontend...20:07
cfbolzkind of20:07
cfbolzthe trade-offs are very different20:07
Alex_Gaynorwell, I just think it would be useful to somehow share code with optimizeopt, like the paper on automatic LICM for all of them :/20:08
cfbolzyes but no. I'm repeating myself here, but this would require serious surgery on resume data20:09
Alex_Gaynori suppose we don't have any doctors on staff20:10
cousteauhttp://ideone.com/Non4M <- O_o what was that?20:11
cousteauit was like 10x faster!20:11
Alex_Gaynorcfbolz: nice blog post btw20:12
arigatocousteau: :-)20:12
arigato"for example, why doesnt everyone always use PyPy for everything?!"20:13
cfbolzarigato: :-)20:14
ArfreverSome people want to use Python 3 features :) .20:14
cousteauso this project looks interesting... it reminds me of the "micro-controlled processors" idea20:15
fijalArfrever: more people want other stuff20:16
cousteau(don't know how they were actually called)20:16
cousteauI want to run other apps on pypy20:16
Alex_Gaynorarigato, cfbolz: trunk is 33% faster than 1.5, I'll leavea  comment20:16
CIA-5503danchr 07roundup * 10#766/Shadowstack root finder should be competitive with asmgcc in speed: 20:17
CIA-55mvt also did a run on Mac OS X, and his results mirror a run I just did:20:17
CIA-55http://paste.pocoo.org/show/rTE982MptcWFWvgwj08N/20:17
CIA-55Shadowstack now va ... * 14https://bugs.pypy.org/issue76620:17
fijalcfbolz: you should clarify, pypy 1.5 4x slower20:18
fijalwe should do 1.620:19
ArfreverIs https://bitbucket.org/pypy/compatibility/wiki/Home up-to-date with PyPy 1.5?20:19
cfbolzfijal: oh, come on20:19
Alex_Gaynorfijal: we should fix regressions first, also some parts of ctypes are randomly slow20:19
Action: cousteau is going to read what "cool things" can pypy do, other than running code fast20:19
fijalcfbolz: :)20:19
fijalAlex_Gaynor: yes, we should20:19
fijalthey're not "randomly" slow20:19
fijalanto only optimized the fast path20:19
fijalthe slow path is still horribly slow20:19
Alex_GaynorI'm not talking about that20:20
Alex_Gaynorwell, although I claim passing str for c_char_p should be fast path20:20
Alex_GaynorI mean thinks like `if pointer` are slow20:20
Alex_Gaynorthey emit calls to _rawffi20:20
justinpeel (~nepo@c-76-23-44-72.hsd1.ut.comcast.net) joined #pypy.20:21
fijalthe what?20:21
fijalhow do they emit calls to _rawffi that are not inlined?20:21
arigatopypy.module._rawffi is not seen by the JIT20:22
fijaleh :/20:23
fijalwell20:23
arigatothis should be fixed, but whoever fixes it needs to be prepared to add tons of jit.dont_look_inside and add support for other cases in the JIT, I fear20:23
fijalI kind of thought the whole idea of jittypes was to remove _rawffi dependency somehow20:23
fijala lot has been added, but yes, sure20:24
arigatono, _rawffi is still used for data.  _ffi only supports calls20:24
Alex_GaynorIMO ctypes is becoming messier :/20:24
fijalwell ok20:24
fijalbut then it's a bit of incomplete part20:24
fijal"take this one piece of ctypes and make it super fast whatever hacks are necessary"20:25
arigatowell it's known to be in-progress, I suppose20:25
justinpeel (~nepo@c-76-23-44-72.hsd1.ut.comcast.net) left irc: Ping timeout: 240 seconds20:25
fijalarigato: is it?20:25
arigatobesides, it's probably easy, but it needs various extensions in the JIT itself20:26
arigatolike we added support for direct_ptradd on raw pointers last week20:26
fijalyes20:26
fijalof course20:26
Alex_Gaynorarigato: only on ccharp though :)20:26
fijalbut I'm not too happy with the approach that jittypes took20:27
fijalwell, who am I to judge though20:27
arigatoAlex_Gaynor: yes20:27
arigatoI suppose we need to stare at real traces and find the obvious "oh, this calls something in _rawffi that is a single operation"20:27
Alex_Gaynorcfbolz: we could make this code a bit faster if we inlined into module/random/ so we could avoid allocating flota objects for each ranomd() call20:27
gutworth (~benjamin@64-131-13-109.usfamily.net) left irc: Quit: leaving20:27
Alex_Gaynorarigato: well `if ctypes_ptr` generates serious nonsense ATM (aka it's a call, when it should be a single ASM instruction)20:28
cousteaunothing... I don't seem to be able to run bpython under pypy20:28
arigatoAlex_Gaynor: obvious enough :-)20:28
cousteaumy bash-fu isn't good enough20:28
Alex_Gaynorarigato: indeed20:29
Kami_ (~kami@unaffiliated/kami-/x-9078513) left irc: Excess Flood20:29
Da_Blitz (~Da_Blitz@203.56.250.63) left irc: Ping timeout: 240 seconds20:30
Kami_ (~kami@unaffiliated/kami-/x-9078513) joined #pypy.20:30
justinpeel (~nepo@c-76-23-44-72.hsd1.ut.comcast.net) joined #pypy.20:32
cfbolz"We can only see a short distance ahead, but we can see plenty there that needs to be done." - Alan Turing20:32
Alex_Gaynorindeed20:33
cfbolzfrom the web page of the author of the blog post20:33
Ademanarigato: do you have a second for a stupid annotator error? http://paste.pocoo.org/show/440351/ produces http://paste.pocoo.org/show/440353/ when ll_unbox_integer is called via a direct_call() (if you need to see where I gen the direct call I can paste all of rerased.py or make a branch for this stuff to live in for now)20:34
Ademanit'd be nice if I didn't even have to make that dummy rpython function for ll_unbox_integer in the first place, but meh20:35
Ademan(i'm sure there's a way but I'm also sure I'm ignorant to it)20:36
fijalAdeman: what's the annotation of v30?20:36
arigatoSomeOOObject()?  that's a low-level annotation, it does not mean SomeInstance() at all20:37
fijalwell, I can explain you what happened anyway20:37
fijaleven if it was SomeInstance, that would not have attribute x20:37
Ademanfijal: my assert doesn't help? (well obviously it doesn't)20:38
fijalno, because annotator doesn't know that it has an attribute20:38
fijalwell, there is more than one thing wrong20:38
AdemanI'm sure there is, I'm in over my head20:38
Nick change: Gulaway -> Gulopine20:39
fijalyou can't pass instances there essentially20:39
fijalyou need to have some low-level annotation20:39
fijalthat has a precise type20:40
justinpeel (~nepo@c-76-23-44-72.hsd1.ut.comcast.net) left irc: Ping timeout: 240 seconds20:40
Ademanfijal: ugh, it will differ for CLI and JVM unless I wrap their respective native boxes in something else...20:40
arigatoessentially, SomeOOInstance() is the oo equivalent of SomePtr(), which is not used in rerased.py either20:41
arigatoso I don't know how you reached that annotation20:41
Ademanarigato: cluelessness20:41
Ademanideally I would have an annotation for java.lang.Object and System.Object on the JVM and CLI respectively20:42
arigatolook at how GCREF is used20:43
fijalarigato: http://speed.pypy.org/timeline/?exe=1&base=none&ben=nbody_modified&env=tannit&revs=5020:43
fijalcan we say this is just noise?20:43
arigatoAdeman: it's not used in annotations, but in the Repr20:43
arigatoAdeman: I fear that you need to understand how it works so far, at least partially; so far it looks like you are trying to apply a very different approach (which may make sense too or not, but more likely not :-)20:45
Alex_Gaynorfijal: maybe? it does appear to be trending slower, perhaps for now a perscription of careful observation?20:45
Ademanarigato: I'll take a look, thanks. It'd help if I had a better conceptual idea of what GCREF represented though. Is it an opaque pointer that will be followed by the GC?20:45
Ademanarigato: I thought I roughly did, but obviously not well enough20:46
arigatofijal: agreed with alex20:46
arigatoAdeman: yes, exactly20:46
arigatoAdeman: in other words it plays the same role as "a java.lang.Object"20:46
Alex_Gaynorfijal: I claim assembly offsets are wrong or something: http://paste.pocoo.org/show/440357/20:46
arigatoAdeman: well I'm unsure why you introduce register_external() in the first place20:47
fijalAlex_Gaynor: did you do hg pull -u  on jitviewer?20:47
Alex_Gaynorfijal: yes20:47
Kami_ (~kami@unaffiliated/kami-/x-9078513) left irc: Quit: Off20:48
fijalthey might be20:48
fijalI guess pdb time?20:48
fijalto look what's wrong?20:48
Alex_Gaynorfijal: anyway this only seemed to happen at the very end of a trace, before finish()20:48
Alex_Gaynorso I'm not too bothered20:48
fijaland also you get what's there ;-)20:48
fijalthere might be some optimization that puts the together20:48
fijalwith one write barrier or so20:48
Kami_ (~kami@unaffiliated/kami-/x-9078513) joined #pypy.20:48
fijalso I wouldn't be too concerned20:48
Alex_Gaynoruh, yes indeed I bet it's that20:48
justinpeel (~nepo@c-76-23-44-72.hsd1.ut.comcast.net) joined #pypy.20:49
fijalgood :)20:49
fijalassembler is fun20:49
Alex_Gaynorit's amazing, we are fast at this but there is still tons of nonsense20:49
Alex_Gaynor2 allocations in the inner gammavariant loop, plus a total mess of error checking around log calls20:50
fijalwell, sky is the limit :)20:50
fijalI claim we owe a lot to good tools20:50
Alex_GaynorC is the limit actually20:50
fijalif you ask me20:51
Alex_Gaynor(pun intended)20:51
fijal;]20:51
fijaljustinpeel: shout if some of the branches are up to review20:52
fijaljustinpeel: also, did you want some help with something?20:52
Alex_Gaynorfijal: yes, good tools are important20:52
Alex_Gaynorfijal: I'd never notice that W_Random.random is allocating if jit viewr didn't make it very obvious20:52
fijalarigato: what did you use for staring at psyco's assembler?20:53
Alex_Gaynorare there tools which make starting at assembler less painful?20:53
fijaljitviewer?20:54
arigatoa web server that serves pages containing a disassembly of one "block" of instructions, together with a summary of the state (equivalent to the virtuals/boxes/consts)20:54
arigatowith the jumps being links20:54
justinpeel (~nepo@c-76-23-44-72.hsd1.ut.comcast.net) left irc: Ping timeout: 252 seconds20:55
fijaladvanced :)20:55
fijalwe still didn't get to jumps being links in jitviewer btw....20:56
arigatouh?  they are20:56
arigatoif you click on a jump or on an often-failing guard, you see the target20:56
fijaleven at the end of the loop?20:57
fijalah ok20:57
arigatoyes20:57
arigatoI don't know, wasn't it you that implemented that? :-)20:57
fijalmaaaaybe20:58
Alex_Gaynorwe did it at the sprints20:58
fijalif so, then I was completely fried ;-)20:58
arigato:-)20:58
fijalor wasn't me20:58
ThantiK (~User@c-71-203-92-115.hsd1.fl.comcast.net) joined #pypy.20:58
fijalout of random facts, I'm super happy with where pypy is goind20:58
arigato?-)20:58
fijalgoing even20:59
fijalat least we didn't create perl 621:00
arigatoyes, we were going vaguely in the perl 6 direction at the end of the EU project, but then dropped all these half-thought-out attempts21:01
arigatoand instead focused on just the core language21:02
ThantiKI'm just hoping PyPy allows someone, anyone, to be a little more serious when it comes to multimedia/graphics, etc.  Right now multimedia on python is a steaming pile of joke.21:02
Action: Alex_Gaynor personally hopes we drop even more random stuff21:02
arigato:-)21:02
Action: arigato feels almost bad adding tealets21:02
arigatobut only almost21:03
fijalwe can drop stackless transform21:03
fijalthat's something21:03
arigatoyes :-)21:03
Alex_Gaynorthe only people have ever used pypy for real stuff have been because of the JIT, why do we bother keeping ootype around21:04
cousteauI haven't managed to figure out how to run bpython yet... using python 2.6's packages, it finds pkg_resources but then it exits with "DistributionNotFound: bpython==0.9.6.2"21:04
fijalAlex_Gaynor: because pypy is designed in a way that it does not cost much ;-)21:04
cousteau(this is an installed version of bpython that I assume is intended to run on the installed Python [CPython])21:05
Alex_Gaynorfijal: except when you break it because no one has ever tested it.21:05
fijalindeed we would feel bad if stackless were an ongoing maintenance nightmare and we no longer need it before it's actually useful21:05
fijalinstead most burden was to set up a buildbot21:05
Alex_Gaynorold stackless will go away when we add tealets right?21:06
Alex_Gaynor(and tealets will be default)21:06
Alex_Gaynorbpython doesn't work because we don't have an _curses module21:06
Unhelpful (~quassel@rockbox/developer/Unhelpful) left irc: Ping timeout: 276 seconds21:07
mvt (~mvantelli@53530442.cm-6-4a.dynamic.ziggo.nl) left irc: Quit: This computer has gone to sleep21:09
fijalAlex_Gaynor: note that this was the first non-noise change in mako since january21:12
kans (~kans@c-98-236-30-13.hsd1.pa.comcast.net) left irc: Quit: Leaving.21:12
Alex_Gaynorfijal: ok so I don't claim it's not real, just that I have  bit no clue how to further investigate21:12
fijalwell, I'm just sayin for fun21:12
Alex_Gaynorwell, but it should be fixed21:13
Alex_GaynorI just have no idea how to21:13
kkris1 (~kris@80-123-34-69.adsl.highway.telekom.at) joined #pypy.21:14
Action: cousteau gives up and goes to dinner21:14
cousteau(nice project, though)21:14
cousteau (~cousteau@80.174.59.133.dyn.user.ono.com) left irc: Quit: Ïa Ïa Cthulhu F'tang F'tang Olé Biscuitbarrel21:14
Alex_Gaynorbtw I'm making a list of possible task ideas for my sprint with pjenvey and brett cannon tomorrow, so far I have: 1) more multibytecodec stuff, 2) clean up multimethods, 3) compose an email about object idenitty for python-dev.  Any other suggestions?21:14
Trundle (~andy@python/site-packages/trundle) left irc: Ping timeout: 252 seconds21:14
kkris (~kris@80-123-38-183.adsl.highway.telekom.at) left irc: Ping timeout: 252 seconds21:15
Unhelpful (~quassel@rockbox/developer/Unhelpful) joined #pypy.21:17
fijalAlex_Gaynor: 1)21:17
derdon (~derdon@p5DE8A154.dip.t-dialin.net) joined #pypy.21:17
Alex_Gaynor?21:18
fijalthe first item21:18
fijalfrom the list21:18
Trundle (~andy@python/site-packages/trundle) joined #pypy.21:18
Alex_Gaynorwhat about it21:18
fijaldo it :)21:20
fijaleither os x is super slow or we need to do something21:20
cfbolzAlex_Gaynor: I like them all21:20
fijalI wonder how fast is cpython ./translate.py on os x21:20
Alex_Gaynorthe idea is to make a list21:20
fijalI fear multimethods might burn brett21:20
Alex_Gaynorso we can work on whatever interests them21:20
kenaan12fijal benchmarks 11846fa56a282b 15/runner.py: add a postfix parameter21:22
kenaan12fijal buildbot 113ca6784afb86 15/bot2/pypybuildbot/master.py: change the URL to the canonical one. will revert if it breaks stuff21:23
kenaan12fijal buildbot 119f67b389b4fa 15/bot2/pypybuildbot/: enable nightly builds of pypy-c-64bit21:23
kenaan12fijal buildbot 11ada781d23a2d 15/bot2/pypybuildbot/master.py: typo21:24
kenaan12fijal buildbot 1100b2db6f1765 15/bot2/pypybuildbot/builds.py: another fix21:25
fijalwindows crashed21:27
fijalmight have been me restarting the buildbot though21:27
fijalarigato: feel like fixing?21:27
magcius (jstpierre@unaffiliated/magcius) left #pypy ("Leaving").21:29
Action: fijal doesn't know any more if "pypy 4x slower than C" is a good or bad thing21:29
magcius (~jstpierre@unaffiliated/magcius) joined #pypy.21:29
arigatofijal: it crashed, but I have no clue why21:36
arigatoI'm restarting a translation interactively21:36
fijalarigato: restarting the buildmaster might have caused that?21:36
arigato(please don't use the builder in the meantime)21:36
fijalif so I'm sorry21:36
arigatofijal: no, I think it occurred earlier than the restart21:37
nirbheek (~nirbheek@gentoo/developer/flyingspaghettimonster/nirbheek) joined #pypy.21:37
arigatonote that it's windows, which means that the process is limited to 2GB exactly21:37
arigatoit's not impossible that what "error 0x4000000015" is trying to hint at is "out of address space"21:38
fijalaha :)21:40
nirbheek (~nirbheek@gentoo/developer/flyingspaghettimonster/nirbheek) left irc: Ping timeout: 252 seconds21:43
Ademanis specialize_call considered an rtyping operation or an annotation operation? (also what calls specialize_call=)21:47
mitsuhikoWhoever pinged me, back now21:47
mkhan (~mkhan@122.167.122.135) left irc: Quit: mkhan21:58
Ademanhrm, I wonder if there's a better way to go about this, I'll have to implement a new opcode though...21:58
mkhan (~mkhan@122.167.122.135) joined #pypy.21:59
cfbolz (~cfbolz@dslb-188-108-231-232.pools.arcor-ip.net) left irc: Quit: Leaving22:16
beatpanic (kpanic@gnufunk.org) left irc: Ping timeout: 240 seconds22:19
intertzu (~interrupt@m4.mullvad.net) joined #pypy.22:19
beatpanic (kpanic@gnufunk.org) joined #pypy.22:19
santagada (~santagada@c925bcc7.virtua.com.br) joined #pypy.22:23
zain[] (~textual@c-67-160-201-63.hsd1.ca.comcast.net) joined #pypy.22:25
donri (~donri@unaffiliated/dagodenhall) joined #pypy.22:25
mat^2 (~mathias@87.55.1.34) joined #pypy.22:26
santagada (~santagada@c925bcc7.virtua.com.br) left irc: Remote host closed the connection22:27
kennethreitz (~kennethre@c-24-127-96-129.hsd1.va.comcast.net) joined #pypy.22:30
Alex_Gaynorfijal: well 4x slower than C is not terrible, but we can do better :)22:34
kkris1 (kris@80-123-34-69.adsl.highway.telekom.at) left #pypy ("Leaving.").22:34
kenaan12cfbolz heap-caching-during-tracing 11160b69e37ce6 15/pypy/jit/metainterp/: make sure the stuff works with resizable lists too22:38
kenaan12cfbolz heap-caching-during-tracing 1134414cbab3ef 15/pypy/jit/metainterp/: make new construction go via the normal setfield code22:38
kenaan12cfbolz heap-caching-during-tracing 11823933ada2fb 15/pypy/jit/metainterp/: make virtualizable code delegate to default implementations to get the right caching effect.22:38
arigato (~arigo@82.113.98.162) left irc: Quit: See you22:54
Trundle (~andy@python/site-packages/trundle) left irc: Quit: ...22:59
rhumnzouc (~rhumnzouc@65.202.192.251) joined #pypy.23:11
rhumnzouc (rhumnzouc@65.202.192.251) left #pypy ("Leaving").23:11
Alex_Gaynorfijal: eh, is http://paste.pocoo.org/show/440433/ bad?23:12
Alex_GaynorI suppose yes, my current pypy is broken23:13
cousteau (~cousteau@80.174.59.133.dyn.user.ono.com) joined #pypy.23:19
Alex_Gaynorhttp://speed.pypy.org/changes/?tre=10&rev=45678%3Ae911b2205846&exe=1&env=tannit23:23
fijalwe broke stuff23:27
fijalor were you using tannit?23:27
fijal### spitfire_cstringio ###23:28
fijalMin: 2.950000 -> 7.510000: 2.5458x slower23:28
fijalAvg: 4.823000 -> 7.572400: 1.5701x slower23:28
fijalthat looks like a lot of difference between min and avg23:28
Alex_GaynorI am not using tannit23:29
Alex_Gaynorwas somebody?23:29
Kami_ (~kami@unaffiliated/kami-/x-9078513) left irc: Excess Flood23:29
Kami_ (~kami@unaffiliated/kami-/x-9078513) joined #pypy.23:30
dgl (~dgl@109.86.165.231) joined #pypy.23:32
fijalI don't know23:46
fijalwe can rerun the benchmarks maybe23:46
ThantiK (User@c-71-203-92-115.hsd1.fl.comcast.net) left #pypy ("Leaving.").23:49
cousteaucan I use a module written in Cython on PyPy?23:51
fijalno23:51
cousteauaww :(23:51
fijalwhat module?23:52
cousteauone I wrote myself23:52
fijalfor what?23:52
cousteauactually, just for testing cython23:53
intertzu (~interrupt@m4.mullvad.net) left irc: Quit: Verlassend23:53
cousteauhttp://ideone.com/CxXuf <- this one23:54
Alex_Gaynorthe first one is plenty fast on pypy23:54
fijalif the only reason is speed, don't even bother23:55
cousteauAlex_Gaynor, I just experienced how it's like 14x faster than CPython, yes23:55
cousteaufijal, also I have a project I did using a lot of C and Cython23:56
fijalI guess time to rethink ;-)23:56
Alex_Gaynor14x is ok I suppose23:57
cousteauok... what about installed programs? any chance of running them on pypy instead of cpython?23:57
cousteauAlex_Gaynor, let me see how long it takes with each one23:57
fijalcousteau: what installed programs?23:58
cousteauwell, bpython, for example23:59
--- Sun Jul 17 201100:00

Generated by irclog2html.py 2.9.2 by Marius Gedminas - find it at mg.pov.lt!