#pypy IRC log for Saturday, 2012-01-28

mwhudson_ (~mwh@121-73-77-183.cable.telstraclear.net) left irc: Ping timeout: 245 seconds00:04
nedbat (nedbat@python/psf/nedbat) joined #pypy.00:07
Tobu (~Tobu@unaffiliated/tobu) left irc: Ping timeout: 252 seconds00:17
Tobu (~Tobu@unaffiliated/tobu) joined #pypy.00:17
Rhyolitefijal: are you still awake?00:23
fijalsorta00:24
fijalwhy?00:24
buribu (~buribu@177.41.209.170) joined #pypy.00:33
buribu (~buribu@177.41.209.170) left irc: Changing host00:33
buribu (~buribu@unaffiliated/buribu) joined #pypy.00:33
bbot24Failure: 15http://buildbot.pypy.org/builders/own-macosx-x86-32/builds/78901:03
rekamso (~textual@216.190.27.14) left irc: Ping timeout: 276 seconds01:03
EnCuKou (~encukou@ip-94-113-220-25.net.upcbroadband.cz) joined #pypy.01:08
Tobu (~Tobu@unaffiliated/tobu) left irc: Ping timeout: 252 seconds01:09
bbot24Failure: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-32/builds/1037 [12fijal]01:09
tilgovi (~randall@couchdb/developer/tilgovi) joined #pypy.01:12
tilgovi (~randall@couchdb/developer/tilgovi) left irc: Read error: Connection reset by peer01:20
ericflo (~ericflo@75.103.8.110) left irc: Quit: ericflo01:23
nettok (~quassel@190.148.27.106) joined #pypy.01:33
bbot23Success: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64-2/builds/48 [12fijal]01:46
whitelynx (~whitelynx@75.111.197.204) joined #pypy.01:55
nedbat (nedbat@python/psf/nedbat) left irc: Ping timeout: 255 seconds01:57
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-64/builds/69202:00
bbot2Started: 15http://buildbot.pypy.org/builders/own-linux-x86-64/builds/80302:00
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-Ojit-no-jit-linux-x86-32/builds/87402:00
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-32/builds/121402:00
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-64/builds/68902:00
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-32/builds/153302:00
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-jit-win-x86-32/builds/34202:00
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-jit-macosx-x86-64/builds/35202:00
bbot2Started: 15http://buildbot.pypy.org/builders/own-linux-x86-32/builds/194402:00
davisagli (~davisagli@davisagli.com) left irc: Excess Flood02:06
davisagli (~davisagli@davisagli.com) joined #pypy.02:07
Tobu (~Tobu@unaffiliated/tobu) joined #pypy.02:12
nedbat (~nedbat@python/psf/nedbat) joined #pypy.02:13
ixokai (~ixokai@rrcs-24-199-8-246.west.biz.rr.com) joined #pypy.02:32
ixokai (~ixokai@rrcs-24-199-8-246.west.biz.rr.com) left irc: Changing host02:32
ixokai (~ixokai@pdpc/supporter/student/ixokai) joined #pypy.02:32
Tobu (~Tobu@unaffiliated/tobu) left irc: Ping timeout: 272 seconds02:45
Tobu (~Tobu@unaffiliated/tobu) joined #pypy.02:53
bbot23Success: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64/builds/220 [12fijal]02:53
Shanita (~John@osbk-4db1576f.pool.mediaWays.net) joined #pypy.03:04
Kaskuka (~John@osbk-4db06c7e.pool.mediaWays.net) left irc: Ping timeout: 276 seconds03:04
berdario (~Tiibiidii@host142-83-dynamic.2-87-r.retail.telecomitalia.it) left irc: Ping timeout: 276 seconds03:23
bbot24Failure: 15http://buildbot.pypy.org/builders/pypy-c-jit-win-x86-32/builds/34203:27
take_cheeze (~Adium@pc06224.anc-tv.ne.jp) joined #pypy.03:55
bbot24Failure: 15http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-64/builds/69203:57
take_cheeze (~Adium@pc06224.anc-tv.ne.jp) left irc: Quit: Leaving.03:59
ixokai_ (~ixokai@rrcs-24-199-8-246.west.biz.rr.com) joined #pypy.04:03
ixokai_ (~ixokai@rrcs-24-199-8-246.west.biz.rr.com) left irc: Changing host04:03
ixokai_ (~ixokai@pdpc/supporter/student/ixokai) joined #pypy.04:03
ixokai_ (~ixokai@pdpc/supporter/student/ixokai) left irc: Read error: Connection reset by peer04:04
ixokai__ (~ixokai@rrcs-24-199-8-246.west.biz.rr.com) joined #pypy.04:04
ixokai__ (~ixokai@rrcs-24-199-8-246.west.biz.rr.com) left irc: Changing host04:04
ixokai__ (~ixokai@pdpc/supporter/student/ixokai) joined #pypy.04:04
take_cheeze (~Adium@pc06224.anc-tv.ne.jp) joined #pypy.04:06
ixokai (~ixokai@pdpc/supporter/student/ixokai) left irc: Ping timeout: 248 seconds04:07
nedbat (~nedbat@python/psf/nedbat) left irc: Ping timeout: 276 seconds04:09
aboudreault__ (~alanb@modemcable072.19-23-96.mc.videotron.ca) joined #pypy.04:18
Nick change: ixokai__ -> ixokai04:38
bbot24Failure: 15http://buildbot.pypy.org/builders/own-linux-x86-64/builds/80304:57
whyking (~quassel@ip68-14-13-208.ri.ri.cox.net) joined #pypy.05:06
DasIch_ (~DasIch@p3E991232.dip.t-dialin.net) joined #pypy.05:09
DasIch (~DasIch@p3E9901EF.dip.t-dialin.net) left irc: Read error: Operation timed out05:10
Nick change: DasIch_ -> DasIch05:10
Nick change: aboudreault__ -> aboudreault05:11
aboudreault (~alanb@modemcable072.19-23-96.mc.videotron.ca) left irc: Changing host05:11
aboudreault (~alanb@osgeo/member/aboudreault) joined #pypy.05:11
ixokai (~ixokai@pdpc/supporter/student/ixokai) left irc: Quit: Bye!05:17
whyking (~quassel@ip68-14-13-208.ri.ri.cox.net) left irc: Ping timeout: 260 seconds05:19
nettok (~quassel@190.148.27.106) left irc: Ping timeout: 252 seconds05:21
buribu (~buribu@unaffiliated/buribu) left irc: Remote host closed the connection05:32
Tobu (~Tobu@unaffiliated/tobu) left irc: Ping timeout: 248 seconds05:35
bbot24Failure: 15http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-32/builds/153305:56
bbot24Failure: 15http://buildbot.pypy.org/builders/pypy-c-Ojit-no-jit-linux-x86-32/builds/87405:56
bbot24Failure: 15http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-64/builds/68905:58
bbot24Failure: 15http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-32/builds/121406:09
mrsipan_ (~ben@ip98-163-95-196.dc.dc.cox.net) joined #pypy.06:16
intchanter (~intchante@c-76-27-100-38.hsd1.ut.comcast.net) left irc: Read error: Operation timed out06:18
intchanter (~intchante@c-76-27-100-38.hsd1.ut.comcast.net) joined #pypy.06:21
Tobu (~Tobu@unaffiliated/tobu) joined #pypy.06:37
bbot24Failure: 15http://buildbot.pypy.org/builders/pypy-c-jit-macosx-x86-64/builds/35206:40
whitelynx (~whitelynx@75.111.197.204) left irc: Quit: Ex-Chat06:42
ronan__ (~ronan@host86-172-62-103.range86-172.btcentralplus.com) joined #pypy.06:48
ronan (~ronan@host86-172-60-8.range86-172.btcentralplus.com) left irc: Ping timeout: 245 seconds06:50
mikefc (~mike@60-242-240-196.static.tpgi.com.au) left irc: Quit: mikefc06:51
Garen_ (garen@69.76.18.3) joined #pypy.06:56
asmeurer (~asmeurer@dhcp-altamirano-166.resnet.nmt.edu) left irc: Quit: asmeurer07:10
bbot23Success: 15http://buildbot.pypy.org/builders/own-linux-x86-32/builds/194407:11
bbot2Started: 15http://buildbot.pypy.org/builders/own-linux-x86-32/builds/1945 [py3k]07:11
aboudreault (~alanb@osgeo/member/aboudreault) left irc: Quit: Leaving07:16
alexsuraci_ (u1962@gateway/web/irccloud.com/x-uzwnigekobqfddho) joined #pypy.07:36
AlekSi (~AlekSi@176.57.74.133) joined #pypy.07:37
vad (~vad@95.233.48.120) joined #pypy.07:53
amaury_ (~amaury_@46-127-23-192.dynamic.hispeed.ch) joined #pypy.08:03
vad (~vad@95.233.48.120) left irc: Remote host closed the connection08:06
zain (~textual@46.120.28.30) joined #pypy.08:13
bbot24Failure: 15http://buildbot.pypy.org/builders/own-linux-x86-32/builds/1945 [py3k]08:15
AlekSi (~AlekSi@176.57.74.133) left irc: Remote host closed the connection08:21
dmitrey (~quassel@77.121.195.200) joined #pypy.08:28
dmitrey (~quassel@77.121.195.200) left irc: Ping timeout: 260 seconds08:35
dmitrey (~quassel@77.121.195.200) joined #pypy.08:55
squiddy (~squiddy@g224197211.adsl.alicedsl.de) joined #pypy.08:58
amaury_Is geninterp still used somewhere?09:01
dmitrey (~quassel@77.121.195.200) left irc: Remote host closed the connection09:17
antocuni (~antocuni@host62-122-dynamic.6-79-r.retail.telecomitalia.it) joined #pypy.09:18
kenaan12arigo default 1115600a1bc7ca 15/pypy/jit/codewriter/assembler.py: Tweak to ignore all Symbolics, not just some of them, by ignoring the TypeError when trying to compare them with sm...09:26
kenaan12arigo default 117cdc8cea91ab 15/pypy/jit/codewriter/assembler.py: Fix: keep the original special-cases.  Needed at least for ComputedIntSymbolics, otherwise they might force computa...09:26
kenaan12arigo default 11451261ed7b89 15/pypy/rlib/rstacklet.py: Baaaaaah.  "Fix" issue1020.09:26
CIA-603arigo 07roundup * 10#1020/segfault when running test_greenlet.py through pypy pytest.py: 09:27
CIA-6[invalid] Baaaah. Closed as invalid. It's a level issue: the test tries to run by09:27
CIA-6calling directly the C function stacklet_switch(), it's not a ... * 14https://bugs.pypy.org/issue102009:27
`fox` (~fox@adsl211-124.aknet.it) joined #pypy.09:31
hruske (~Gasper@2001:15c0:66e9:14:8c7d:23ff:fe29:db3a) joined #pypy.09:43
hruske (~Gasper@2001:15c0:66e9:14:8c7d:23ff:fe29:db3a) left irc: Client Quit09:43
fijal (~fijal@196-210-150-33.dynamic.isadsl.co.za) left irc: Ping timeout: 272 seconds09:56
fijal (~fijal@196-210-150-33.dynamic.isadsl.co.za) joined #pypy.10:11
mikefc (~mike@60-242-240-196.static.tpgi.com.au) joined #pypy.10:15
kenaan12arigo miniscan 11e50b47052be5 15/: A branch to try to play with conservative root scanning, as a 3rd option to asmgcc-vs-shadowstack.10:20
kenaan12arigo miniscan 1131b709ec2998 15/pypy/: In-progress.10:20
fijalhehe :)10:21
amaury_"conservative" like boehm?10:26
mwhudson_ (~mwh@121-73-77-183.cable.telstraclear.net) joined #pypy.10:38
dmitrey (~quassel@77.121.195.200) joined #pypy.10:38
fijalhttp://www.youtube.com/watch?v=GjnRLG8ATn410:39
mwhudson_ (~mwh@121-73-77-183.cable.telstraclear.net) left irc: Client Quit10:42
arigato (~arigo@xdsl-188-154-145-222.adslplus.ch) joined #pypy.11:02
fijalarigato: aha!11:10
fijalhi armin :)11:10
arigatohi11:12
fijalwhat's your plan with miniscan?11:13
fijaland did you pinpoint the segfault with greenlets by chance?11:13
Action: fijal watches http://www.youtube.com/watch?v=GjnRLG8ATn411:13
fijaltalk by dabeaz about pypy11:13
arigatogreenlet: yes, see issue1020 and 451261ed7b8911:15
fijaleh no the other one?11:16
fijallet me fish11:16
arigatothen no11:16
arigatominiscan: get rid of both shadowstack and asmgcc, and do conservative scanning of the stack roots11:16
fijalhttps://bugs.pypy.org/issue99511:16
dmitrey (~quassel@77.121.195.200) left irc: Ping timeout: 276 seconds11:16
fijalthis is also interesting potentially but not release critical11:16
fijalconservative = like boehm?11:16
arigatoissue995: that's not about greenlets at all?11:17
CIA-603fijal 07roundup * 10#1009/numpypy ndarray bug "TypeError: 'flatiter' object is not subscriptable": [resolved] Fixed. * 14https://bugs.pypy.org/issue100911:17
fijalno no, just browsing issues11:17
derdon (~derdon@pD9E1D731.dip.t-dialin.net) joined #pypy.11:17
CIA-603fijal 07roundup * 10#1006/numpypy array(1).reshape(1,1) fails: [resolved] Fixed * 14https://bugs.pypy.org/issue100611:17
arigato"did you pinpoint the segfault with greenlets by chance?" "yes"11:17
arigatoany other meaning that you may have implied has been lost :-)11:18
fijalhehe11:19
fijalok I think I'm confused11:19
fijalas in there was one bug while I thought there were two11:19
fijalcan we close this: https://bugs.pypy.org/issue985 btw?11:19
arigatoah there is issue101611:20
arigatodidn't look so far11:20
fijalah yes11:20
fijalthat's the one I was thinking about :)11:20
fijalindeed11:20
mrsipan_ (~ben@ip98-163-95-196.dc.dc.cox.net) left irc: Ping timeout: 245 seconds11:21
arigatoissue985: I would like actually hakanardo to have a look11:21
nirbheek (~nirbheek@gentoo/developer/flyingspaghettimonster/nirbheek) left irc: Ping timeout: 245 seconds11:22
arigatoI'm unsure why the jit optimizer decides that all loops are invalid, so it keeps tracing forever11:22
fijalmeh, I have to reboot the wifi router, wait11:22
fijal_ (~fijal@196.215.151.81) joined #pypy.11:26
fijal_back11:26
fijal_and there si also this: https://bugs.pypy.org/issue97811:26
fijal_but I was not able to compile converge vm last time I tried11:26
arigatoI don't know11:27
fijal (~fijal@196-210-150-33.dynamic.isadsl.co.za) left irc: Ping timeout: 276 seconds11:27
fijal_ok, I can give a look ath that11:27
Nick change: fijal_ -> fijal11:27
arigatoit's not release-critical, if that's the question:11:29
fijalit's not11:29
arigatoConverge was great in finding bugs in the jit, but always bugs that didn't happen for pypy11:29
fijalof course that does not prove anything11:29
fijalbut yes, it's very likely not release critical11:30
fijalit does not prove anything only in the boring sense :)11:30
fijalso conservative = like boehm right (about the GC)11:30
arigatoyes, although only from the stack --- of course inter-object references are exact11:33
fijalok11:33
fijalso you would "just" scan the entire stack without worrying about types?11:34
arigatobasically I realized I made a mistake when considering such solutions11:34
arigatoI thought it would create a larger and larger number of pinned objects kept alive on "maybe" grounds11:34
arigatobut that's not true, because these objects are bounded by the size of the stack11:35
fijalwell11:35
fijaland objects kept by them11:35
arigatosure11:35
fijalso in theory they are unbound11:35
arigatoin this sense, yes11:35
fijalbut in practice they're faily bound11:35
fijalfairly11:35
arigatoyes, we would just scan the entire stack11:35
fijalsounds simple enough11:35
fijalwhat can go wrong....11:36
arigato:-)11:36
fijaldo you still need special stuff, like closing/reclosing stack?11:36
arigato"optionally"11:36
fijalotherwise you scan the entire C stack with "too bad" approach?11:36
arigatoyes11:36
nirbheek (~nirbheek@gentoo/developer/flyingspaghettimonster/nirbheek) joined #pypy.11:36
fijalare all registers somewhere on stack when you do the call to say malloc?11:37
arigatoclosing/reopening the stack should be fairly easy given that we already have the necessary code,11:37
fijalI think so11:37
arigatobut even that should be weighted11:37
arigatoit costs something performance-wise11:37
arigatoe.g. in a jitted function that does tons of calls to tiny C functions11:37
arigatofijal: not necessarily, that's why we need one line of custom assembler11:38
fijalwell I think it's relatively safe to assume "most C calls are shallow"11:38
fijalok, which registers are not on stack?11:38
arigatothere are registers which are callee-save11:39
fijalbut the callee saves them on the stack if it decides to use them no?11:39
arigatoin theory you can have a gcptr in such a register that stays in the register for all the duration of the malloc()11:39
fijalah I see11:39
arigatoyes11:39
fijalsounds like a very-unlikely-yet-fatal-bug if you forget11:39
arigatoyes11:39
fijalcan you only store them if you collect or also when you malloc?11:40
arigato(but maybe not that unlikely on 64-bit, where there are more registers)11:40
arigatoit's fine if it's done only when we malloc11:40
arigatosorry11:40
arigatoonly when we collect11:40
fijalok11:40
Da_Blitzwoah, i had no idea pypy ran on crushed up grad students souls11:40
fijalthat sounds like "what can go wrong" strategy11:40
arigatoyes, please continue to come up with points that could go wrong :-)11:41
fijalI'm just thinking loud :)11:41
fijalso far11:41
arigatothe point is that I think in total it's not that much11:41
fijalI would not be against killing stuff like asmgcc btw :)11:42
arigatome too :-)11:42
arigatowe'll see how this scanning strategy turns out11:43
lucian_ (~lucian@cpc1-newc15-2-0-cust84.gate.cable.virginmedia.com) joined #pypy.11:43
fijalit seems like something that can be improved by say a gcc plugin11:44
fijalso convervative, but not conservative with a gcc plugin11:44
fijal(for example)11:44
fijalor clang11:44
fijalthat sounds better than shadowstack-or-gcc-plugin11:45
kenaan12fijal default 11534391d69807 15/pypy/module/micronumpy/tool/numready/main.py: a missing space11:48
fijalarigato: indeed, sorry, but what can potentially go wrong is all I can think about :)11:52
lucian_ (~lucian@cpc1-newc15-2-0-cust84.gate.cable.virginmedia.com) left irc: Ping timeout: 276 seconds11:52
fijalhow do you determine whether an object is a pointer or not?11:52
fijalor more precisely - how do you determine that you *can* read the value of a pointer? (it is in your heap)11:53
arigato"in our heap" means either it's in the nursery, or it is externally malloced, or it is handled by minimarkpage11:54
arigatowe have a list of externally malloced objects somewhere, which maybe we need to turn into a set11:55
fijalso can you precisely say "this is my pointer" somehow?11:55
paranoidifijal: darn, the flexget bootstrap runs out of file handles even with --distribute ;P11:55
arigatowell you can say "here is some random value: is it really a pointer?"11:55
fijalarigato: I mean "is it my pointer"11:55
arigato"my" pointer?11:56
fijalas in "does it point to a valid object allocated by pypy"11:56
arigatoyes, I mean that too11:56
fijalok11:56
fijalbecause 0x1245 is a pointer as well :)11:56
fijalhow do you tell that with minimarkpage?11:56
arigato"here is some random value: is it really a pointer to a valid object?"11:56
fijalyes precisely11:56
arigatowith minimarkpage you can answer the question too, a bit indirectly:11:57
arigatoif p not in one of the arenas, False11:57
arigatoelse we look on which page it points11:58
arigatowe read the page objects' size in the page header11:58
fijaland you count ok11:58
fijalwell that can potentially be slow11:58
arigatoand we compute if the pointer is really pointing to an object and not somewhere between11:58
fijalbut I suppose you can do a number of easy reductions11:58
fijallike "it has to be dividably by 8" or so11:58
arigatoyes, a bit slow, but that's all right because it's only needed for stack roots11:58
arigatoyes11:59
JaRoel|4d (~jaroel|4d@2001:980:7133:1:919:5f47:a0f:f931) joined #pypy.11:59
fijalyou can probably do tricks11:59
fijallike cache stack every X calls11:59
arigatoI don't think we really care11:59
fijaland use caches if your stack didn't go up enough11:59
fijalbut yes, sure11:59
arigatofor minor collections anyway, we only care about nursery pointers12:00
fijalright12:00
fijalactually12:00
fijalthat would be useful for other stuff as well no?12:00
arigatolike?12:00
fijalonly scan stack Y frames up because we know there are no nursery pointers above that12:00
arigatoyes, but it needs the invalidate the caches at the right moment12:01
fijalalthough I think stack scanning takes so little time % wise of nursery collect it's not really worth it12:01
fijalit never popped in my profiles at least12:01
arigatono, it's roughly 20% of the nursery collect time12:01
berdario (~Tiibiidii@host142-83-dynamic.2-87-r.retail.telecomitalia.it) joined #pypy.12:02
fijaluh ok12:02
arigatoah, not exactly12:02
fijalthen maybe at specific places (portal?) it makes sense to have a list of nursery pointers above this frame12:03
arigato20% is the time scanning the stack and copying the objects directly referenced out of the nursery12:03
fijalah well it depends on the survival rate12:03
arigatothe rest 80% is copying the indirect references12:03
fijalwell easy12:03
fijal(for nursery only)12:03
fijalper portal you store the flag "nursery pointers above this frame"12:04
arigato(running translate, or translate --annotate, I don't remember which)12:04
fijaland you invalidate it each time you return12:04
fijalif you do nursery collect you mark all the portals on your stack "no"12:04
fijaland then at nursery collect you only go up to the point where it says "no"12:04
arigatoyes, something like that might work, but it is unclear how much you win12:05
fijalit's very easy to do with shadowstack at least12:05
arigatocertainly not 20%12:05
fijalof course, you don't know until you try :)12:05
fijalbut it sounds very easy12:05
arigatobecause you win only scanning of objects that don't need to be copied out of the nursery12:05
fijalyou might win something, but it's unclear12:06
fijalyou certainly win if you have deep stack that does not change much12:06
fijalsounds relatively common12:06
fijalobviously if your loop does not allocate you win nothing12:06
arigatoyes, with shadowstack it's easy to hack something like "push a special marker word in the shadowstack"12:06
fijalyes12:07
arigatoduring minor collection you replace it with a different marker word12:07
arigatoand that's it basically12:07
fijalyou can do it with say asmgcc or miniscan by having a little piece of assembler that stores a marker on the stack always below portal12:07
arigatonot with miniscan, because you don't know what a marker is12:08
fijalso portal is one extra stack depth (as in one word) and you push and pop at entry/exit12:08
fijalbut you know with miniscan what sort of function it is no?12:08
arigatono, you look at the stack as an array of words12:08
fijalok12:08
fijalyou can probably have a corresponding structure (like a shadowstack) that's much shallower12:09
fijalthat contains only portal calls and have markers12:09
fijaldoes not sound like a big overhead12:09
arigatoah, maybe12:09
arigatobut then you need the whole structure of shadowstack just to maintain this shallow list12:09
fijalso it would contain say stack relative offset or 0 or something like that12:09
fijalwell not the whole12:09
fijalbecause it's much smaller12:09
fijalor you mean the entire complexity?12:10
arigatoyes12:10
fijalI don't think you need the entire complexity because it seems like it's expresable by a simple graph transform12:10
fijalbut how about we measure with shadowstack and make judgements?12:11
arigatothat's stupid, because we can also have a stack marker like 3 or 4 "magic" words long12:11
arigatobut risk very, very, very, very rare segfaults12:11
whyking (~quassel@ip68-14-13-208.ri.ri.cox.net) joined #pypy.12:11
paranoidifijal: I was trying to see if issue 996 was fixed, but it still crashed to mysterious db issues and oddly violates our (badly implemented) single Manager instance only rules in unit tests. Also the only test that does not require database runs much slower with pypy, 1.4s vs 0.4s ;P12:12
fijalas long as chances are smaller than being hit by a meteor I'm fine12:12
arigatofijal: yes, or the chances of the computer miscomputing something12:12
fijalarigato: yes :)12:12
arigatobut then we need a bit of care12:12
fijalarigato: you know that the algorithm checking "is this number prime" is probabilistic right?12:12
arigatoe.g. the 4 magic words should not be stored somewhere and then reloaded on the stack by some unrelated file reader12:13
arigatoyes, I know :-)12:13
fijalright12:13
fijalsounds advanced, but if it gives us some win it would be good12:13
arigatoyes, maybe :-)12:14
fijalparanoidi: so I need more data I fear12:14
paranoidifijal: I'm happy to provide, if I can :)12:14
fijalsure go ahead12:15
fijallike a traceback12:15
fijalpreferably a small program how to reproduce12:15
fijalit's probably sqlite-ctypes problem12:15
fijalconfirming/denying it's a problem with sqlite-ctypes & cpython also helps12:15
paranoidihttp://pastie.org/private/bqcik50pic7erpe8k0vg (I don't think this much interests you)12:22
fijalah well12:22
fijalthis is something that's a wontfix12:22
fijalclose your files12:22
fijalor make distribute close it's files12:22
paranoidinot mine to close, and last time you recommended distribute, well apparently it sucks too  :D12:22
dmitrey (~quassel@77.121.195.200) joined #pypy.12:24
paranoidihttp://pastie.org/private/pnp3vx5mnzl2vtgdjsqa12:24
fijalI did not "recommend"12:25
fijalI said "it might be better"12:25
fijalthe latter one might sound like also a GC problem12:26
paranoididunno, it's trying to create multicolumn index for table like instructed in SQLalchemy documentation12:28
paranoiditha table "failed" should be present in there12:28
arigatosounds similar to another issue with sql12:29
arigatoah no, sorry, it's issue996 indeed12:30
dmitreyfijal: since issue with flatiter has been fixed, code for diag() and eye() can be taken directly from numpy sources without changes. However, I'm not 100% sure is it compatible with RPython12:30
paranoidihmm, although we have our own metaclass magic between there a bit ..12:30
fijaldmitrey: if it's python in numpy it does not have to12:31
kenaan12fijal extradoc 118191a7475814 15/blog/draft/numpy-status-update-2.rst: Another numpy update12:31
kenaan12fijal extradoc 113745452a2f67 15/blog/draft/numpy-status-update-2.rst: fix link & update12:31
fijalarigato: ^^^ feel like reviewing?12:31
paranoidioh, indeed, using SQLAlchemy Base instead of our own works12:32
fijalparanoidi: I don't think I have many comments ;-)12:33
fijalI suppose there *might* be a bug somewhere where we're not 100% compatible with some weird metaclass aspect12:33
fijalbut also chances are it works by accident and it'll have a relatively low priority12:33
fijaland you kind of have to investigate why exactly it fails12:34
PiotrSikora (~none@nginx/adept/piotrsikora) left irc: Excess Flood12:36
PiotrSikora (~none@nginx/adept/piotrsikora) joined #pypy.12:37
kenaan12fijal extradoc 11d119c145bdd7 15/blog/draft/numpy-status-update-2.rst: remove info12:37
whyking (~quassel@ip68-14-13-208.ri.ri.cox.net) left irc: Read error: Connection reset by peer12:38
arigatoparanoidi: note that issue996 was fixed 5 days ago.  does your issue show up even with a recent pypy?12:38
arigato(sorry if you already said so)12:38
arigatofijal: yes, I can review12:38
kenaan12fijal extradoc 11684e5e859da4 15/blog/draft/numpy-status-update-2.rst: oops, finish the sentence12:38
paranoidiarigato: nope, I think this is another issue ..12:39
arigatook12:39
arigatonote that it's pure python code, at least the interface to sqlite12:39
arigatoso it can be debugged "normally", with pdb & friends12:39
arigatofijal: most ufuncs now accept axis parameter (except all and any)12:41
arigatoI'm adding the quotes, because without them, it sounds very strange :-)12:42
fijalhahah12:42
fijalok :)12:42
nedbat (~nedbat@python/psf/nedbat) joined #pypy.12:42
kenaan12arigo extradoc 114d7cc9f25be7 15/blog/draft/numpy-status-update-2.rst: typotypotypos but otherwise sounds good.12:44
arigatofijal: ^^^12:44
JaRoel|4d (~jaroel|4d@2001:980:7133:1:919:5f47:a0f:f931) left irc: Remote host closed the connection12:45
kenaan12arigo extradoc 11d95b8fd7f2dd 15/blog/draft/numpy-status-update-2.rst: one more12:45
arigatosorry, done.12:46
fijalarigato: I had a living-death experience yesterday trying to look how the hell ppc code was rpython in 200712:47
arigatozombie code!12:48
arigatouh, I got an obscure idea that's probably not worth it12:50
arigatorepresent all GC pointers as an odd word, instead of an even one12:50
arigatothen the even words are easier to manipulate for tagged integers12:51
arigatoand it's easier to check "is the gcref p a valid pointer" by checking that p is odd12:51
arigato(i.e. not null and not a tagged integer)12:52
arigatosimilarly in the conversative stack scanning, non-odd values can be ruled out12:52
arigatouseful because it is likely that some random raw pointer is even12:53
kenaan12fijal extradoc 1196966961df4d 15/blog/draft/numpy-status-update-2.rst: the last para is a bit pushy, we just started12:54
arigato(it "just" makes gdb debugging even more of a mess)12:54
dmitrey (~quassel@77.121.195.200) left irc: Remote host closed the connection12:55
arigatofijal: I'd keep the first line of the last para12:55
arigatoas some conclusion12:55
fijalWe hope to provide you with more frequent updates on the progress.12:56
fijallike this one12:56
arigatoyes12:56
fijalok12:56
kenaan12fijal extradoc 11898fac7cc21a 15/blog/draft/numpy-status-update-2.rst: this probably wasn't supposed to be killed12:57
fijalarigato: post?12:59
arigatothat last line is strange anyway :-/12:59
fijalyes12:59
fijalI have no idea how to summarize it better though12:59
nickik (~nick@217.150.233.216) joined #pypy.12:59
arigatoyou mean to say that people should expect more frequent updates on the blog I suppose13:00
fijalI would like to have bi-weekly numpy progress reports13:00
kenaan12l.diekmann default 112cb8ade3aef2 15/pypy/objspace/std/: test and fix for cached empty list with deactivated strategies13:01
kenaan12l.diekmann default 11a384864c5d6c 15/pypy/module/cpyext/: test and fix for cpyext/listobject.py: PyList_GET_SIZE and PyList_SetItem13:01
kenaan12l.diekmann default 113607ba0bb92d 15/pypy/objspace/std/listobject.py: decided that a cached empty list is too dangerous and that is is better to live with a sligthly slower empty l...13:01
kenaan12l.diekmann default 1151eb80cfd760 15/: merge13:01
fijalbecause I think pypy development process is too opaque13:01
fijalI would try to press anto to do the same about py3k13:01
fijalbut he will object13:01
kenaan12arigo extradoc 11f58b1b95e973 15/blog/draft/numpy-status-update-2.rst: This way maybe?13:02
fijalyes13:03
kenaan12fijal extradoc 1167dcf04c0397 15/blog/draft/numpy-status-update-2.rst: rst fix;13:05
xcombelle (~xcombelle@AToulouse-551-1-110-139.w92-149.abo.wanadoo.fr) joined #pypy.13:06
arigatocool13:10
fijalposted13:10
arigatothe number of posts in January gets near to the record for the last three years (which was always in March, for some reason)13:12
fijal:]13:12
fijalwasn't pycon in/around march?13:12
arigato(the absolute record is June 2008, though)13:12
arigatoyes13:12
fijalwhat happened in June 2008?13:12
fijalarigato: ok, an extreme example13:13
fijalhttp://paste.pocoo.org/show/542061/13:13
fijalwalk_to_parent_frame takes 35% of total time13:13
fijalthis *is* extreme though13:14
fijal11% in the slightly more reasonable case of 200 call depth13:15
arigato (~arigo@xdsl-188-154-145-222.adslplus.ch) left irc: Ping timeout: 252 seconds13:17
arigato (~arigo@xdsl-188-154-145-222.adslplus.ch) joined #pypy.13:18
fijalarigato: have you seen the stuff I posted?13:19
arigatoyes, up to "11% in the slightly..."13:19
arigatoI suppose there might be a win, but it's unclear13:19
arigatobut it's worth a try given that it's easy13:19
fijalwell13:20
fijal1/3 of a speedup in an extreme case is more than we usually go for ;-)13:20
fijalgiven the simplicity13:20
arigatoah yes13:20
arigatoit means that just scanning the 800 stacks and not copying anything takes (35-11)% of the time13:20
arigatothen yes, it's worth it indeed13:21
amaury_3 blog posts in 3 days!13:21
fijalamaury_: I have another one in the queue, we're throttling to the limit of 1/day13:22
arigatoand cfbolz has "part 2" ready to post, as far as I know :-)13:22
fijalarigato: are you doing the experiment or should I play? note that I have no idea how shadowstack works, so I would happily let you do it ;-)13:22
arigatoand I would like to post soonish an stm update too13:23
arigatofijal: how about pair-programming? :-)  but after lunch for me13:23
fijalsounds like a plan!13:23
arigato:-)13:23
fijalI'll make some lunch as well13:23
fijalin say 1h?13:23
arigatoworks for me13:27
Action: fijal off for a bit13:28
Action: fijal back14:07
Action: arigato back too14:16
fijalsure, screen on tannit?14:16
arigatook14:16
fijalyour or mine?14:16
arigatomine, 32bit?14:17
arigatobah14:17
arigatono, 64bit14:17
arigatoon 32bit I get as usual "Must run suid root for ..."14:17
arigato-> #pypy-sync14:17
gyanyna (gyanyna@188.229.30.170) joined #pypy.14:28
gyanyna!top14:28
gyanyna (gyanyna@188.229.30.170) left #pypy.14:29
nedbat (~nedbat@python/psf/nedbat) left irc: Ping timeout: 276 seconds14:32
dmitrey (~quassel@77.121.195.200) joined #pypy.14:46
aboudreault (~alanb@osgeo/member/aboudreault) joined #pypy.14:56
xcombelle (~xcombelle@AToulouse-551-1-110-139.w92-149.abo.wanadoo.fr) left irc: Ping timeout: 276 seconds15:10
dmitrey (~quassel@77.121.195.200) left irc: Remote host closed the connection15:11
fijalarigato: shouldn't MARKER_TRACED be already an address?15:16
arigatomaybe but it doesn't change anything15:18
nedbat (~nedbat@python/psf/nedbat) joined #pypy.15:20
nettok (~quassel@190.148.27.106) joined #pypy.15:21
xcombelle (~xcombelle@AToulouse-551-1-139-30.w86-201.abo.wanadoo.fr) joined #pypy.15:21
Arach (~arach@128-75-163-251.broadband.corbina.ru) left irc: Ping timeout: 255 seconds15:22
nedbat (~nedbat@python/psf/nedbat) left irc: Ping timeout: 248 seconds15:26
inhahe (~inhahe@adsl-074-186-083-219.sip.mia.bellsouth.net) left irc: Ping timeout: 260 seconds15:30
inhahe (~inhahe@adsl-074-186-083-219.sip.mia.bellsouth.net) joined #pypy.15:30
Arach (~arach@128-75-189-245.broadband.corbina.ru) joined #pypy.15:33
xcombelle (~xcombelle@AToulouse-551-1-139-30.w86-201.abo.wanadoo.fr) left irc: Ping timeout: 248 seconds15:35
voidspac_ (~voidspace@87-194-212-65.bethere.co.uk) joined #pypy.15:38
mrsipan_ (~ben@ip98-163-95-196.dc.dc.cox.net) joined #pypy.15:42
mrsipan_ (~ben@ip98-163-95-196.dc.dc.cox.net) left irc: Read error: Operation timed out15:45
xcombelle (~xcombelle@AToulouse-551-1-70-2.w92-146.abo.wanadoo.fr) joined #pypy.15:48
dmitrey (~quassel@77.121.195.200) joined #pypy.15:49
zain (~textual@46.120.28.30) left irc: Ping timeout: 244 seconds15:49
berdario (~Tiibiidii@host142-83-dynamic.2-87-r.retail.telecomitalia.it) left irc: Quit: Ex-Chat15:55
kenaan12arigo stackroot-speedup 11641b24e593c6 15/pypy/rpython/: (fijal, arigo)  Trying to speed up the stack root walking step of minor collections. The idea is to mark ...15:55
kenaan12arigo stackroot-speedup 11ecd5a39e368a 15/pypy/rpython/memory/: (fijal, arigo)  Pass the flag "is_minor" around.15:55
kenaan12arigo stackroot-speedup 1120b7b00aefee 15/pypy/: (fijal, arigo)  Test in progress.15:55
antocuni (~antocuni@host62-122-dynamic.6-79-r.retail.telecomitalia.it) left irc: Ping timeout: 252 seconds15:56
zain (~textual@46.120.28.30) joined #pypy.15:57
xcombelle (~xcombelle@AToulouse-551-1-70-2.w92-146.abo.wanadoo.fr) left irc: Ping timeout: 260 seconds16:00
`fox` (~fox@adsl211-124.aknet.it) left irc: Ping timeout: 255 seconds16:01
pythonirc101 (~pythonirc@c-68-63-40-199.hsd1.fl.comcast.net) joined #pypy.16:03
pythonirc101does pyqt, twisted work with pypy on windows?16:03
pythonirc101can pyinstaller use it? does anyone know?16:04
voidspac_ (~voidspace@87-194-212-65.bethere.co.uk) left irc: Quit: Goodbye...16:05
amaury_pythonirc101: Twisted works, but IIRC the installer fails16:05
amaury_because some optional extension module cannot be built16:06
fijalit was fixed in the recent release IMO16:06
pythonirc101what about pyqt? pyinstaller?16:06
fijalpyqt does not work16:06
fijalpyinstaller - never heard16:06
pythonirc101py2freeze ?16:07
pythonirc101py2exe16:07
fijalprobably not16:08
pythonirc101I downloaded pypy.zip , how do I run a python program using it?16:08
amaury_pyqt won't work because it's based on the SIP wrapper, which is too complex to be compiled for pypy16:08
amaury_I tried to modify it, but SIP has no unit test :-((16:09
fijalamaury_: the SIP wrapper is not hand written16:09
fijalit's auto-generated16:09
pythonirc101well, don't worry about it, someday in the future, pyqt will die... :)16:09
fijaladn the generation tool is not open source16:09
amaury_fijal: the "siplib", then16:09
amaury_containing base types16:10
amaury_siplib.c defines tp_alloc for a meta class16:10
amaury_which is beyond cpyext capabilities16:10
amaury_there is certainly a way to rewrite this16:10
amaury_(metaclasses are not really useful in generated code)16:11
fijalno I mean not the SIP itself16:11
fijalbut the QT SIP wrapper16:11
derdon_ (~derdon@p5DE8B2C1.dip.t-dialin.net) joined #pypy.16:12
pythonirc101in my pypy\bin direcotyr I only see ".py" files. Do I need to execute them using python 272 interpreter?16:12
amaury_pythonirc101: please download a prebuilt version16:12
amaury_fijal: I'm not sure to understand16:13
pythonirc101amaury_: not the jit compiler version?16:13
xcombelle (~xcombelle@AToulouse-551-1-96-188.w92-149.abo.wanadoo.fr) joined #pypy.16:13
amaury_pythonirc101: did you download the source files, or clone the repository?16:14
amaury_if so, you'll have to translate/compile pypy yourself16:14
amaury_which is a pain16:14
pythonirc101I downloaded a zip file. I'm now downloading the nigthly trunk -- pypy-c-jit-latest-win32.zip16:14
pythonirc101got it, this one worked16:15
derdon (~derdon@pD9E1D731.dip.t-dialin.net) left irc: Ping timeout: 252 seconds16:15
pythonirc101is there a setuptools for it that I can get? pip for instance?16:15
berdario (~Tiibiidii@host142-83-dynamic.2-87-r.retail.telecomitalia.it) joined #pypy.16:16
fijalpythonirc101: you create a virtualenv with pypy and you get it16:16
fijalnew virtualenv works as does new pip16:16
pythonirc101fijal: on windows how do I get virtualenv?16:17
fijalpythonirc101: no idea16:17
pythonirc101Are we assuming I've another python installed?16:17
fijalpythonirc101: download it from somewhere16:17
fijalvirtualenv has -p parameter16:17
mattip (~mattip@bzq-79-177-109-132.red.bezeqint.net) joined #pypy.16:19
mattipfijal: merged, translated (nightly) and even blogged! Thanks :)16:20
mattip(fixed too, I see)16:20
fijal:]16:21
pythonirc101is pywin32 usable on pypy yet?16:22
fijalno16:22
pythonirc101pyinstaller / py2exe need that16:22
fijalwell, they also don't work for another reasons16:22
pythonirc101lets say I've a script that works with pypy16:23
pythonirc101how can I convert it to ".exe" file to distribute?16:23
fijalyou cannot16:23
fijalat least not without investing some work16:23
amaury_fijal: I was talking of this tool http://www.riverbankcomputing.co.uk/software/sip/intro16:24
fijalI mean you can always have a .bat script that has pypy & a .py file no?16:24
pythonirc101currently all users of pypy only keep their scripts in house? no distributions?16:24
fijalpythonirc101: we do distribute stuff via say eggs16:24
fijalor as python files!16:24
fijaldistributing python binary with every simple python file is a very windows concept16:24
fijalit does not even exist on linux16:24
pythonirc101fijal: is pypy+script+a.py the right way to distribute pypy scripts right now?16:24
fijalpythonirc101: I would say "no" as in I don't think distributing a python binary with every single python file a very good way to go about it16:25
fijal(if you ask me about a personal opinion)16:25
fijalpythonirc101: not sure a bit what you're trying to achieve btw16:26
pythonirc101we distribute an "executable" app right now using py2exe. I think we'll have to wait till pypy gets there?16:26
fijalpythonirc101: you can just package it by hand if you want to16:27
pythonirc101you mean in a ".bat" file? sounds like a hack to me -- and not the right way.16:28
fijaland py2exe isn't a hack?16:28
fijalpy2exe does essentially the same thing16:28
aboudreault (~alanb@osgeo/member/aboudreault) left irc: Quit: Leaving16:32
mattip (~mattip@bzq-79-177-109-132.red.bezeqint.net) left irc: Quit: Leaving16:40
ixokai (~ixokai@rrcs-24-199-8-246.west.biz.rr.com) joined #pypy.16:42
ixokai (~ixokai@rrcs-24-199-8-246.west.biz.rr.com) left irc: Changing host16:42
ixokai (~ixokai@pdpc/supporter/student/ixokai) joined #pypy.16:42
Unhelpful (~quassel@rockbox/developer/Unhelpful) left irc: Quit: http://quassel-irc.org - Chat comfortably. Anywhere.16:45
Arfrever (~Arfrever@apache/committer/Arfrever) left irc: Read error: Connection reset by peer16:45
Unhelpful (~quassel@rockbox/developer/Unhelpful) joined #pypy.16:46
amaury_fijal: no, py2exe can do everything in memory16:46
amaury_even load .pyd and .dll16:46
fijalyes, it glues it together16:47
`fox` (~fox@host65-111-dynamic.30-79-r.retail.telecomitalia.it) joined #pypy.16:49
ronan__ (~ronan@host86-172-62-103.range86-172.btcentralplus.com) left irc: Ping timeout: 276 seconds16:53
ronan__ (~ronan@host86-133-141-22.range86-133.btcentralplus.com) joined #pypy.16:53
Arfrever (~Arfrever@apache/committer/Arfrever) joined #pypy.16:54
amaury_<spam>16:56
kenaan12amauryfa py3k 1107a52ec2616d 15/pypy/objspace/std/test/test_listobject.py: range() is not a list anymore, and objspace.std.withrangelist was removed16:57
kenaan12amauryfa py3k 11732d082457bf 15/pypy/objspace/std/test/test_listobject.py: Fix remaining failures in test_listobject.16:57
kenaan12amauryfa py3k 11d6dfa54f243c 15/pypy/translator/test/: Fix geninterp tests, and give up with the unicode tests: Parsing 2.x code to build 3.x operations is not a good ide...16:57
kenaan12amauryfa py3k 118f7805107a60 15/pypy/objspace/: Fix tests for the Thunk Object Space16:57
kenaan12amauryfa py3k 11975692f436ef 15/pypy/objspace/std/test/: Fix tuple tests16:57
kenaan12amauryfa py3k 1171d4eb2be749 15/pypy/objspace/std/test/: Fix most of test_long16:57
kenaan12amauryfa py3k 1126e3b9127ae8 15/pypy/objspace/std/test/test_index.py: Easy fixes in test_index16:57
kenaan12amauryfa py3k 11f665d2b4c34d 15/pypy/module/sys/test/test_sysmodule.py: Fixes in test_sysmodule16:57
kenaan12amauryfa py3k 111ff9e2433ebb 15/pypy/module/: Remove sys.setdefaultencoding16:57
kenaan12amauryfa py3k 1191c9b2c580d9 15/: Fix all tests in the io module.16:57
amaury_</spam>16:57
Shanita (~John@osbk-4db1576f.pool.mediaWays.net) left irc: Read error: Connection reset by peer17:00
Kaskuka (~John@osbk-4db1576f.pool.mediaWays.net) joined #pypy.17:03
Rhyolite (~dje@pool-108-6-25-71.nycmny.fios.verizon.net) left irc: Quit: Leaving17:11
Rhyolite (~dje@pool-108-6-25-71.nycmny.fios.verizon.net) joined #pypy.17:14
`fox` (~fox@host65-111-dynamic.30-79-r.retail.telecomitalia.it) left irc: Read error: Connection reset by peer17:14
`fox` (~fox@host65-111-dynamic.30-79-r.retail.telecomitalia.it) joined #pypy.17:14
fijalhttp://lambda-the-ultimate.org/node/444017:24
nedbat (~nedbat@python/psf/nedbat) joined #pypy.17:27
`fox` (~fox@host65-111-dynamic.30-79-r.retail.telecomitalia.it) left irc: Read error: Connection reset by peer17:31
JaRoel|4d (~jaroel|4d@82-169-48-80.ip.telfort.nl) joined #pypy.17:32
`fox` (~fox@host65-111-dynamic.30-79-r.retail.telecomitalia.it) joined #pypy.17:32
tito_ (~tito@178.73.216.222) joined #pypy.17:33
tito (~tito@178.73.216.222) left irc: Ping timeout: 248 seconds17:36
JaRoel|4d (~jaroel|4d@82-169-48-80.ip.telfort.nl) left irc: Remote host closed the connection17:39
`fox` (~fox@host65-111-dynamic.30-79-r.retail.telecomitalia.it) left irc: Ping timeout: 255 seconds17:41
mattip (~mattip@bzq-79-177-109-132.red.bezeqint.net) joined #pypy.17:41
lucian (~lucian@cpc1-newc15-2-0-cust84.gate.cable.virginmedia.com) joined #pypy.17:43
pedronis_ (~pedronis@73-53.195-178.cust.bluewin.ch) joined #pypy.17:46
vad (~vad@host117-105-dynamic.30-79-r.retail.telecomitalia.it) joined #pypy.17:47
pedronis (~pedronis@73-53.195-178.cust.bluewin.ch) left irc: Ping timeout: 255 seconds17:48
kenaan12mattip matrixmath-dot 1157b13475b99a 15/: merge from default17:51
kenaan12mattip matrixmath-dot 11cb8369cbce6f 15/pypy/module/micronumpy/: cleanup after merge, all tests pass17:52
vad (~vad@host117-105-dynamic.30-79-r.retail.telecomitalia.it) left irc: Remote host closed the connection17:54
JaRoel|4d (~jaroel|4d@82-169-48-80.ip.telfort.nl) joined #pypy.17:55
mattipfijal: ping17:55
shiftingcontrol (~kracekuma@101.63.179.97) joined #pypy.17:56
fijalmattip: pongish17:56
mattipmatrixmath-dot passes tests, it has a jit_merge_point and zjit tests.17:57
mattipIt needs more diabolical corner case tests.17:57
mattipcan you take a look over the next coupla days?17:57
fijalya17:58
mattipI thought we should benchmark our current work against plain pypy, against plain python, and against numpy.17:58
fijalwith whay?17:59
fijalwhat?17:59
mattipwould there be any interest in me rewriting the video processing test done in July?17:59
fijalin numpy?17:59
mattipit seems someone else started: https://github.com/pablomouzo/pypy-image-demo17:59
fijalor in vectorized numpy?17:59
mattipyes, the whole hog (numpy+scipy) or even opencv18:00
JaRoel|4d (~jaroel|4d@82-169-48-80.ip.telfort.nl) left irc: Remote host closed the connection18:00
mattipIf we set the bar high we'll know how far we have to go.18:00
fijalfeel free to do something, I'm not *that* interested until we do SSE18:01
mattipok, I'll wait.18:02
lucianSSE support in numpy would be so awesome18:05
fijalmattip: I mean you're more than free to benchmark now18:05
fijalit's more "I won't do it" than "I don't want you to do it"18:06
lucianthe only other high-level runtime that does that is Mono afaik18:06
fijalthat would not be for the whole python though18:06
fijalI think18:06
mattipok, I'll give it some thought.18:09
fijalmattip: it's good to have jitviewer ready btw18:10
kenaan12arigo stackroot-speedup 1151157f562a0f 15/pypy/rpython/memory/gctransform/test/test_framework.py: (fijal, arigo)  Finish the test.  Argh, painful :-(18:30
kenaan12arigo stackroot-speedup 11e23446a82e4e 15/pypy/rpython/memory/gctransform/framework.py: (fijal, arigo)  Fix the framework transformer to let it insert the MARKER_NOT_TRACED into the shadowstack...18:30
kenaan12arigo default 11256d3279bde5 15/pypy/: Reduce the number of cases of shadowstack root walking: from 4 (jit/nojit, thread/nothread) to 2 (thread/nothread).18:30
kenaan12arigo stackroot-speedup 11d12ecbdb1018 15/pypy/: hg merge default  (loosing the changes done so far to shadowstack; will be re-applied in the next checkin)18:30
kenaan12arigo default 11f0d095a1d379 15/pypy/: (fijal, arigo)  Change the order of the shadowstack processing.  We now process it right-to-left instead of left-to...18:30
kenaan12arigo stackroot-speedup 1122439f4f3761 15/pypy/: hg merge default18:30
kenaan12arigo stackroot-speedup 11d160dc0c193a 15/pypy/rpython/memory/gctransform/: (fijal, arigo) add support for MARKER_TRACED that was lost during the merge18:30
shiftingcontrol (~kracekuma@101.63.179.97) left irc: Remote host closed the connection18:34
Transformer (~Transform@ool-4a59e397.dyn.optonline.net) joined #pypy.18:36
Transformer (Transform@ool-4a59e397.dyn.optonline.net) left #pypy.18:37
intchanter (~intchante@c-76-27-100-38.hsd1.ut.comcast.net) left irc: Ping timeout: 245 seconds18:40
intchanter (~intchante@c-76-27-100-38.hsd1.ut.comcast.net) joined #pypy.18:43
ixokai_ (~ixokai@rrcs-24-199-8-246.west.biz.rr.com) joined #pypy.18:43
ixokai_ (~ixokai@rrcs-24-199-8-246.west.biz.rr.com) left irc: Changing host18:43
ixokai_ (~ixokai@pdpc/supporter/student/ixokai) joined #pypy.18:43
ixokai (~ixokai@pdpc/supporter/student/ixokai) left irc: Ping timeout: 255 seconds18:46
mattip (~mattip@bzq-79-177-109-132.red.bezeqint.net) left irc: Quit: bye18:57
fijal (~fijal@196.215.151.81) left irc: Remote host closed the connection19:03
Trundle (~andy@89.204.130.216) joined #pypy.19:03
Trundle (~andy@89.204.130.216) left irc: Changing host19:03
Trundle (~andy@python/site-packages/trundle) joined #pypy.19:03
fijal (~fijal@196.215.151.81) joined #pypy.19:06
Arfrever (~Arfrever@apache/committer/Arfrever) left irc: Quit: Ex+re19:19
nopper (~nopper@ns.patched.biz) joined #pypy.19:23
Arfrever (~Arfrever@apache/committer/Arfrever) joined #pypy.19:29
vad (~vad@host38-18-dynamic.244-95-r.retail.telecomitalia.it) joined #pypy.19:30
vad (~vad@host38-18-dynamic.244-95-r.retail.telecomitalia.it) left irc: Remote host closed the connection19:30
fprimex (~fprimex@fl-67-233-144-239.dhcp.embarqhsd.net) joined #pypy.19:39
kenaan12arigo stackroot-speedup 11ab6b2fd5deb7 15/pypy/: (fijal mostly, arigo review)  Adapt the logic to the JIT shadowstack code.19:44
kenaan12arigo stackroot-speedup 1140fbdea76ec1 15/pypy/jit/backend/llsupport/gc.py: (fijal, arigo)  Also replace MARKER_FRAME with a pair of markers: during minor collection, MARKER_FRAME i...19:44
kenaan12arigo stackroot-speedup 1181fa07721a43 15/pypy/jit/backend/llsupport/gc.py: (fijal, arigo) Performance tweak, maybe19:44
vad (~vad@host38-18-dynamic.244-95-r.retail.telecomitalia.it) joined #pypy.19:51
`fox` (~fox@host65-111-dynamic.30-79-r.retail.telecomitalia.it) joined #pypy.19:52
dmitrey (~quassel@77.121.195.200) left irc: Ping timeout: 244 seconds20:01
vad (~vad@host38-18-dynamic.244-95-r.retail.telecomitalia.it) left irc: Remote host closed the connection20:06
rguilleberthi20:08
kenaan12amauryfa default 11cf1a8868cf4e 15/pypy/: CPython Issue #13885 (CVE-2011-3389): the _ssl module would always disable the CBC IV attack countermeasure.20:08
amaury_First pypy security fix :)20:09
kenaan12amauryfa string-NUL 11ee8a4766b942 15/: A branch to try detection of NUL characters in strings20:10
kenaan12amauryfa string-NUL 11aa595f8bbf18 15/pypy/annotation/listdef.py: In litsdef.merge(), perform checks before we start modifying the other read locations.  This makes debugging ...20:10
kenaan12amauryfa string-NUL 1156ffa1a912b1 15/pypy/: The NUL byte is now disallowed in many posix functions. We use the annotator to "prove" that a string has no ...20:10
`fox` (~fox@host65-111-dynamic.30-79-r.retail.telecomitalia.it) left irc: Ping timeout: 272 seconds20:11
fijalamaury_: can you merge merge-2.7.2?20:12
bbot2Started: 15http://buildbot.pypy.org/builders/own-linux-x86-32/builds/1946 [12amaury, string-NUL]20:13
Alex_Gaynorfijal: there's still a few failing tests20:13
fijalcan you guys fix them maybe :)20:14
amaury_the mmap failures are a bit harder than expected20:15
amaury_it's about LARGE_FILE_SUPPORT even in 32bit20:15
arigatoon windows?20:15
amaury_linux20:15
arigato(because rmmap.py is rather broken for windows)20:16
arigato(in the sense of not being really RPython)20:16
amaury_but it translates?20:16
arigatoyes20:16
arigatobut it does strange things like manipulating an int but checking if it fits 32-bits20:17
vad (~vad@host38-18-dynamic.244-95-r.retail.telecomitalia.it) joined #pypy.20:17
amaury_ah, offset is supposed to be an int6420:17
amaury_but probably annotated as Signed20:18
vad (~vad@host38-18-dynamic.244-95-r.retail.telecomitalia.it) left irc: Remote host closed the connection20:18
amaury_we probably need more unwrap_specs20:20
fijalamaury_: can we not have things like no_NUL20:20
fijalthat is mixed cases?20:20
amaury_Can you rephrase?20:20
fijalno_null20:21
fijalor something would be better20:21
fijalcan_be_None is there I know20:21
fijalbut I don't like it20:21
amaury_sure20:21
amaury_I didn't like it either :)20:21
amaury_that's why I ended with str0 in other places20:22
amaury_like "convertible to a nul-terminated string"20:22
Action: amaury_ renames20:23
dmitrey (~quassel@77.121.195.200) joined #pypy.20:25
kenaan12amauryfa string-NUL 11ad0aa0ec7a90 15/pypy/: Rename to SomeString.no_nul20:26
csenger (~user@dslb-084-058-130-062.pools.arcor-ip.net) joined #pypy.20:39
dmitrey (~quassel@77.121.195.200) left irc: Read error: Connection reset by peer20:54
Rhyolitefijal: pong21:02
xcombelle (~xcombelle@AToulouse-551-1-96-188.w92-149.abo.wanadoo.fr) left irc: Quit: I am a manual virus, please copy me to your quit message.21:06
davisagli (~davisagli@davisagli.com) left irc: Excess Flood21:09
davisagli (~davisagli@davisagli.com) joined #pypy.21:09
zain (~textual@46.120.28.30) left irc: Quit: Computer has gone to sleep.21:25
stakkars_ (~tismer@i59F6BDF0.versanet.de) joined #pypy.21:26
bbot24Failure: 15http://buildbot.pypy.org/builders/own-linux-x86-32/builds/1946 [12amaury, string-NUL]21:27
fprimex (~fprimex@fl-67-233-144-239.dhcp.embarqhsd.net) left irc: Quit: Leaving21:32
squiddy (~squiddy@g224197211.adsl.alicedsl.de) left irc: Quit: Leaving21:33
asmeurer_ (~asmeurer@dhcp-altamirano-166.resnet.nmt.edu) joined #pypy.21:34
lucian (~lucian@cpc1-newc15-2-0-cust84.gate.cable.virginmedia.com) left irc: Ping timeout: 255 seconds21:43
price (~price@BUZZWORD-BINGO.MIT.EDU) left irc: Ping timeout: 248 seconds21:58
tilgovi (~randall@couchdb/developer/tilgovi) joined #pypy.22:00
mattip (~mattip@bzq-79-177-109-132.red.bezeqint.net) joined #pypy.22:01
tilgovi (~randall@couchdb/developer/tilgovi) left irc: Remote host closed the connection22:03
mattipwin32 build is still broken, heres the traceback: http://paste.pocoo.org/show/54235922:06
mattipthe error changed with changeset "15600a1bc7ca Tweak to ignore all Symbolics, not just some of them"22:08
mattiparigato: I think you were trying to fix this ^^^^?22:09
mattipit appears that the Assembler has more than 256 insns keys :(22:13
mattiprather: the insns dictionary in Assembler has more than 256 entries22:13
amaury_mattip: which graph is it?22:13
amaury_(4 levels up in pdb)22:14
mattipthis? <JitCode 'jump_absolute__AccessDirect_None'>22:14
mattipmaybe this:22:15
mattip<pypy.jit.codewriter.flatten.SSARepr object at 0x22b394d0>22:16
mattipno, I'll have to go with graph = <FunctionGraph of (pypy.module.pypyjit.interp_jit:82)jump_absolute__AccessDirect_None at 0x2d71d0d0>22:17
Action: mattip wishes he understood what is what.22:18
amaury_jump_absolute is THE opcode where jitdriver.can_enter_jit() is called22:19
mattipok, I think I'm with you so far.22:20
amaury_I won't go further :-/22:21
mattipcould it be that there are more than 256 jitdrivers?22:21
amaury_huh?22:21
amaury_ah, one for each numpy function22:21
mattipwell, somehow self.write_insn(insn) is adding one-too-many "insn"s to itself22:23
mattipso chr(num) is failing22:23
mattipbut I don't understand why this is win32 specific.22:24
amaury_what are the keys of self.insns?22:28
fijalamaury_: eh, do you feel like explaining on the blog why are you not contracted to work on py3k?22:30
mattiphttp://paste.pocoo.org/show/54236422:31
amaury_fijal: yes22:31
mattipamaury_: would you like me to format it differently?22:35
amaury_that's O22:37
amaury_ok22:37
berdario (~Tiibiidii@host142-83-dynamic.2-87-r.retail.telecomitalia.it) left irc: Ping timeout: 276 seconds22:37
amaury_I'm surprised to see operations like cast_singlefloat_to_float22:37
nedbat (~nedbat@python/psf/nedbat) left irc: Ping timeout: 248 seconds22:39
lucian (~lucian@cpc1-newc15-2-0-cust84.gate.cable.virginmedia.com) joined #pypy.22:40
mattipreformatted and sorted http://paste.pocoo.org/show/54237022:44
JaRoel|4d (~jaroel|4d@sink.jaroel.nl) joined #pypy.22:49
mattipamaury_: I don't really know what to do, going to sleep and hoping angels fix this seems like the best alternative.22:56
arigatomattip: re traceback of windows build: thanks22:57
mattiparigato: I've still got a pdb prompt at the error, anything more I can do?22:58
arigatoyes:   p insn?22:59
mattiphere are the keys: http://paste.pocoo.org/show/542370/22:59
arigatoah no22:59
arigatook22:59
bbot2Started: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-32/builds/103823:00
bbot2Started: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64/builds/22123:00
bbot2Started: 15http://buildbot.pypy.org/builders/own-macosx-x86-32/builds/79023:00
bbot2Started: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64-2/builds/4923:00
mattipahh, that was self.insn. hang on.23:00
arigatonever mind23:00
arigatoI see, it's exploding because it's trying to generate more than 256 different instructions23:00
mattipright. But why does win32 care more than linux, or is it just that no-one tried building linux yet?23:01
arigatoI guess that linux is just below 256 for some reason23:02
arigatonot sure why23:02
arigatobut I guess that it would crash on linux the day we add a few more23:02
arigatosee for example:23:04
arigatostrsetitem/rcc23:04
arigatostrsetitem/rci23:04
arigatostrsetitem/rii23:04
arigatoit's for strsetitem, which is "p.chars[i] = chr(n)", for various (p, i, n)23:04
arigatoin this example we have three versions23:05
arigatothe 'r' stands for the pointer to the string in all cases23:05
arigatothe 'c' stands for "a small constant"23:05
arigatothe 'i' stands for "a general integer"23:05
Alex_Gaynoramusingly no /ric23:06
arigatoso if the RPython program also contained code like "p.chars[i] = '\x00'"23:06
Alex_Gaynorhehe23:06
arigatothen it would also generate the /ric23:06
arigatoindeed23:06
arigatothat's why the total number of operations can very a bit23:06
arigato...can vary a bit23:06
arigatounsure what to do now23:08
arigatowe probably need to trim it down by cutting off the "/..c.." variants of the less-used operations23:08
mattipI don't really understand the ecosystem of the Assembler object, if there is only one (a singleton),23:09
mattipit would seem that as pypy grows it will explode at some point.23:09
arigatoyes, that's what is occurring, but note that this list of operations comes from RPython23:10
arigatoif we didn't have the 'c' optimization, there would be at most one variant for every "ll" operation, which are in finite number (<256)23:11
mattipok.23:11
mattipunicode got around the problem by using 2 chars to encode, that would give more breathing space?23:12
arigatothere is still a finite number of combinations of 'i' versus 'c', but that makes more than 256 in total23:12
mattipand break 10000000 other things.23:12
arigatoyes, we do easily do that, but that's probably not the best solution23:12
mattipanyhow, I am out of my depth and out of time. :(23:13
mattipcan I supply any more info before shutting down?23:14
arigatono, thank you23:14
mattipttfn23:14
mattip (~mattip@bzq-79-177-109-132.red.bezeqint.net) left irc: Quit: Leaving23:14
buribu (~buribu@177.18.238.209) joined #pypy.23:15
buribu (~buribu@177.18.238.209) left irc: Changing host23:15
buribu (~buribu@unaffiliated/buribu) joined #pypy.23:15
lucian (~lucian@cpc1-newc15-2-0-cust84.gate.cable.virginmedia.com) left irc: Ping timeout: 276 seconds23:33
kenaan12arigo default 11c5e504c2c62b 15/pypy/jit/codewriter/: Hopefully fix the Win32 translation, which has just hit the limit of generating more than 256 different instruction...23:33
inhahe (~inhahe@adsl-074-186-083-219.sip.mia.bellsouth.net) left irc: Remote host closed the connection23:34
inhahe (~inhahe@adsl-074-186-083-219.sip.mia.bellsouth.net) joined #pypy.23:34
kenaan12arigo default 11b0d540cb3d25 15/pypy/jit/codewriter/assembler.py: Unification: the other unicode operations are not in the list either.23:34
arigato (~arigo@xdsl-188-154-145-222.adslplus.ch) left irc: Quit: See you23:37
kenaan12arigo default 11b38d41e81500 15/pypy/jit/codewriter/assembler.py: these three operations are also rare23:38
voidspace (~voidspace@python/psf/voidspace) left irc: Quit: Bye...23:47
lucian (~lucian@cpc1-newc15-2-0-cust84.gate.cable.virginmedia.com) joined #pypy.23:57
Trundle (~andy@python/site-packages/trundle) left irc: Remote host closed the connection23:59
--- Sun Jan 29 201200:00

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