#pypy IRC log for Tuesday, 2012-01-24

nedbat (~nedbat@python/psf/nedbat) left irc: Ping timeout: 255 seconds00:04
Nick change: forrestv -> p2pool00:09
Nick change: p2pool -> forrestv00:09
ciphergoth_ (~paul@host238.lshift.net) joined #pypy.00:16
bogner (bogner@2600:3c03::f03c:91ff:fedf:7ef4) left irc: Ping timeout: 272 seconds00:16
ciphergoth (~paul@host238.lshift.net) left irc: Ping timeout: 272 seconds00:16
bja (~bja@69.11.216.98) left irc: Ping timeout: 252 seconds00:24
PiotrSikora (~none@nginx/adept/piotrsikora) left irc: Ping timeout: 272 seconds00:26
icrazyhack (~horieyui@183.60.100.168) joined #pypy.00:26
PiotrSikora (~none@nginx/adept/piotrsikora) joined #pypy.00:28
nedbat (~nedbat@python/psf/nedbat) joined #pypy.00:28
bogner (bogner@2600:3c03::f03c:91ff:fedf:7ef4) joined #pypy.00:28
pnguyen (~pnguyen@cpe-70-112-214-119.austin.res.rr.com) left irc: Quit: pnguyen00:35
kenaan12fijal default 11fc6c9d14a686 15/pypy/doc/getting-started.rst: bump rev no00:40
kenaan12fijal default 11454ec575a42a 15/pypy/: merge00:40
zain (~textual@bzq-79-179-136-94.red.bezeqint.net) left irc: Quit: Computer has gone to sleep.00:58
dripton (~dripton@pool-72-86-45-238.clppva.fios.verizon.net) left irc: Quit: Konversation terminated!01:00
bbot24Failure: 15http://buildbot.pypy.org/builders/own-macosx-x86-32/builds/78501:04
Tobu (~Tobu@unaffiliated/tobu) left irc: Ping timeout: 252 seconds01:13
Tobu (~Tobu@unaffiliated/tobu) joined #pypy.01:22
Arfrever (~Arfrever@apache/committer/Arfrever) left irc: Ping timeout: 240 seconds01:31
50UAAAFSE (~quassel@190.148.249.220) joined #pypy.01:33
bbot23Success: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64/builds/21401:36
bbot23Success: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64-2/builds/4101:37
voidspace (~voidspace@python/psf/voidspace) left irc: Quit: Goodbye...01:41
bbot2Started: 15http://buildbot.pypy.org/builders/own-linux-x86-64/builds/79902:00
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-32/builds/152902:00
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-64/builds/68502:00
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-32/builds/121002:00
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-Ojit-no-jit-linux-x86-32/builds/87002:00
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-jit-win-x86-32/builds/33802:00
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-64/builds/68802:00
bbot2Started: 15http://buildbot.pypy.org/builders/own-linux-x86-32/builds/193802:00
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-jit-macosx-x86-64/builds/34802:00
tilgovi (~randall@couchdb/developer/tilgovi) left irc: Remote host closed the connection02:33
[R2D2Warrior!R2D2@ip68-10-207-121.hr.hr.cox.net] rules 02:33
gtaylor (~gtaylor@108-196-160-156.lightspeed.tukrga.sbcglobal.net) left irc: Read error: Connection reset by peer02:41
csenger|` (~user@dslb-084-058-175-088.pools.arcor-ip.net) joined #pypy.03:02
neunon (~snoonan@unaffiliated/neunon) left irc: Remote host closed the connection03:02
Kaskuka (~John@osbk-4db14ccb.pool.mediaWays.net) left irc: Ping timeout: 240 seconds03:04
Kaskuka (~John@osbk-4db17b2e.pool.mediaWays.net) joined #pypy.03:04
ericflo (~ericflo@75.103.8.110) left irc: Quit: ericflo03:04
csenger|away (~user@dslb-084-058-148-237.pools.arcor-ip.net) left irc: Ping timeout: 240 seconds03:05
tilgovi (~randall@couchdb/developer/tilgovi) joined #pypy.03:18
bbot23Success: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-32/builds/102403:24
bbot2Started: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-32/builds/1025 [12fijal]03:24
bbot24Failure: 15http://buildbot.pypy.org/builders/pypy-c-jit-win-x86-32/builds/33803:25
tilgovi_ (~randall@couchdb/developer/tilgovi) joined #pypy.03:31
50UAAAFSE (~quassel@190.148.249.220) left irc: Remote host closed the connection03:32
tilgovi (~randall@couchdb/developer/tilgovi) left irc: Ping timeout: 244 seconds03:33
stakkars (~tismer@p5DDB5C07.dip.t-dialin.net) left irc: Read error: Connection reset by peer03:49
stakkars (~tismer@p5DDB5C07.dip.t-dialin.net) joined #pypy.03:49
stakkars (~tismer@p5DDB5C07.dip.t-dialin.net) left irc: Read error: Connection reset by peer03:59
stakkars (~tismer@p5DDB5C07.dip.t-dialin.net) joined #pypy.03:59
csenger|` (~user@dslb-084-058-175-088.pools.arcor-ip.net) left irc: Read error: Operation timed out04:01
tilgovi (~randall@couchdb/developer/tilgovi) joined #pypy.04:06
tilgovi_ (~randall@couchdb/developer/tilgovi) left irc: Ping timeout: 252 seconds04:06
ivan (~ivan@unaffiliated/ivan/x-000001) left irc: Quit: ERC Version 5.3 (IRC client for Emacs)04:07
ivan` (~ivan@unaffiliated/ivan/x-000001) left irc: Quit: ERC Version 5.3 (IRC client for Emacs)04:07
nedbat (~nedbat@python/psf/nedbat) left irc: Ping timeout: 276 seconds04:16
ivan` (~ivan@unaffiliated/ivan/x-000001) joined #pypy.04:17
bbot23Success: 15http://buildbot.pypy.org/builders/own-linux-x86-64/builds/79904:24
Niedar (gfghfghf@host-173-230-2-23.vanodod.clients.pavlovmedia.com) left irc: Quit: ( www.nnscript.com :: NoNameScript 4.22 :: www.esnation.com )04:40
tilgovi (~randall@couchdb/developer/tilgovi) left irc: Remote host closed the connection04:42
CIA-1703papercrane 07roundup * 10#1016/RPython AssertionError while running async io greenlet test: 04:43
CIA-17I've uploaded a new tarball which uses errno instead of hard-coding and runs fine04:43
CIA-17on Linux as well as OSX. However, I still cannot reproduce on ... * 14https://bugs.pypy.org/issue101604:43
pnguyen (~pnguyen@cpe-70-112-214-119.austin.res.rr.com) joined #pypy.04:53
bfirsh (u1308@gateway/web/irccloud.com/x-nsyfrckocafmnpsb) left irc: Ping timeout: 240 seconds05:01
Alex_Gaynor (u1246@gateway/web/irccloud.com/x-benrfcmzgaejjsps) left irc: Ping timeout: 240 seconds05:01
DasIch_ (~DasIch@p4FFDE139.dip.t-dialin.net) joined #pypy.05:06
DasIch (~DasIch@p3E990BC9.dip.t-dialin.net) left irc: Ping timeout: 248 seconds05:08
Nick change: DasIch_ -> DasIch05:08
stakkars_ (~tismer@p5DDB5C07.dip.t-dialin.net) joined #pypy.05:14
stakkars (~tismer@p5DDB5C07.dip.t-dialin.net) left irc: Read error: Connection reset by peer05:14
Nick change: stakkars_ -> stakkars05:14
stakkars_ (~tismer@p5DDB5C07.dip.t-dialin.net) joined #pypy.05:16
stakkars (~tismer@p5DDB5C07.dip.t-dialin.net) left irc: Read error: Connection reset by peer05:16
Nick change: stakkars_ -> stakkars05:16
stakkars_ (~tismer@p5DDB5C07.dip.t-dialin.net) joined #pypy.05:22
stakkars (~tismer@p5DDB5C07.dip.t-dialin.net) left irc: Read error: Connection reset by peer05:22
Nick change: stakkars_ -> stakkars05:22
stakkars_ (~tismer@p5DDB5C07.dip.t-dialin.net) joined #pypy.05:24
stakkars (~tismer@p5DDB5C07.dip.t-dialin.net) left irc: Read error: Connection reset by peer05:24
Nick change: stakkars_ -> stakkars05:24
Alex_Gaynor (u1246@gateway/web/irccloud.com/x-nyxhkathukzeilzk) joined #pypy.05:26
#pypy: mode change '+o Alex_Gaynor' by ChanServ!ChanServ@services.05:26
bbot23Success: 15http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-32/builds/152905:29
ivan` (~ivan@unaffiliated/ivan/x-000001) left irc: Ping timeout: 252 seconds05:31
bbot23Success: 15http://buildbot.pypy.org/builders/pypy-c-Ojit-no-jit-linux-x86-32/builds/87005:31
bbot23Success: 15http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-32/builds/121005:47
bbot23Success: 15http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-64/builds/68505:50
bbot23Success: 15http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-64/builds/68805:52
horieyui (horieyui@222.47.100.126) joined #pypy.06:01
icrazyhack (~horieyui@183.60.100.168) left irc: Ping timeout: 255 seconds06:02
anish_ (anish@nat/redhat/x-myuoluoqsgiyqaos) joined #pypy.06:03
squiddy (~squiddy@g224198052.adsl.alicedsl.de) joined #pypy.06:05
pnguyen (~pnguyen@cpe-70-112-214-119.austin.res.rr.com) left irc: Read error: Connection reset by peer06:11
pnguyen (~pnguyen@cpe-70-112-214-119.austin.res.rr.com) joined #pypy.06:12
DasIch (~DasIch@p4FFDE139.dip.t-dialin.net) left irc: Quit: DasIch06:24
AlekSi (~AlekSi@85.235.191.82) joined #pypy.06:24
CIA-1703maggot 07roundup * 10#1017/io.open compatibility error: (log message trimmed)06:34
CIA-17[new] io.open:06:34
CIA-17If the object is in non-blocking mode and no bytes are available,06:34
CIA-17None is returned.06:34
CIA-17but pypy raises: * 14https://bugs.pypy.org/issue101706:34
espes (~espes@123-243-221-248.tpgi.com.au) left irc: Read error: Connection reset by peer06:34
espes (~espes@123-243-221-248.tpgi.com.au) joined #pypy.06:35
papercrane (~papercran@c-76-103-172-115.hsd1.ca.comcast.net) left irc: Quit: Computer has gone to sleep.06:41
AlekSi (~AlekSi@85.235.191.82) left irc: Remote host closed the connection06:51
bbot23Success: 15http://buildbot.pypy.org/builders/own-linux-x86-32/builds/193806:54
mat^2 (~mathias@212.130.113.35) left irc: Ping timeout: 240 seconds06:55
ronnymoin07:01
zain (~textual@87.69.91.91) joined #pypy.07:05
bbot24Failure: 15http://buildbot.pypy.org/builders/pypy-c-jit-macosx-x86-64/builds/34807:08
tumbleweedhrm, I suspect fixing #1017 may get around all the related problems I was looking at07:10
pjdelport (~pjdelport@c-69-251-199-136.hsd1.md.comcast.net) joined #pypy.07:13
zain (~textual@87.69.91.91) left irc: Ping timeout: 252 seconds07:14
nirbheek_ (~nirbheek@gentoo/developer/flyingspaghettimonster/nirbheek) joined #pypy.07:19
matti[ (c1a9466d@gateway/web/freenode/ip.193.169.70.109) joined #pypy.07:21
matti[fijal: ping07:21
nirbheek (~nirbheek@gentoo/developer/flyingspaghettimonster/nirbheek) left irc: Ping timeout: 245 seconds07:21
matti[fijal: are you missing an "hg add" ? this commit 27230fad on numpy-back-to-applevel seems a little too small...07:23
PiotrSikora (~none@nginx/adept/piotrsikora) left irc: Ping timeout: 272 seconds07:23
Action: matti[ will try again later07:24
Nick change: matti[ -> mattip07:24
mattip (c1a9466d@gateway/web/freenode/ip.193.169.70.109) left irc: Client Quit07:25
asmeurer (~asmeurer@dhcp-altamirano-166.resnet.nmt.edu) joined #pypy.07:26
PiotrSikora (~none@nginx/adept/piotrsikora) joined #pypy.07:27
tilgovi (~randall@couchdb/developer/tilgovi) joined #pypy.07:28
nirbheek_ (~nirbheek@gentoo/developer/flyingspaghettimonster/nirbheek) left irc: Ping timeout: 240 seconds07:29
JaRoel|4d (~jaroel|4d@sink.jaroel.nl) left irc: Remote host closed the connection07:30
asmeurer (~asmeurer@dhcp-altamirano-166.resnet.nmt.edu) left irc: Ping timeout: 255 seconds07:33
nirbheek_ (~nirbheek@gentoo/developer/flyingspaghettimonster/nirbheek) joined #pypy.07:34
Nick change: nirbheek_ -> nirbheek07:34
mvt` (~mvantelli@87.213.45.85) joined #pypy.07:34
Tobu (~Tobu@unaffiliated/tobu) left irc: Ping timeout: 272 seconds07:35
mvt` (mvantelli@87.213.45.85) left #pypy.07:36
bbot24Failure: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-32/builds/1025 [12fijal]07:37
asmeurer (~asmeurer@dhcp-altamirano-166.resnet.nmt.edu) joined #pypy.07:40
Tobu (~Tobu@unaffiliated/tobu) joined #pypy.07:42
antocuni (~antocuni@host155-125-dynamic.25-79-r.retail.telecomitalia.it) joined #pypy.07:43
hruske (~Gasper@188-230-156-183.dynamic.t-2.net) joined #pypy.07:56
lahwranis there somewhere I can see progress on the stm work?08:02
mikefc__it's all in the branch i think. not sure anyone's written up anything08:04
lahwranit wasn't super interesting until I read that blog post ... the automagical-ness of it sounds very magical, I'm very excited to see how it will work08:05
csenger|` (~user@dslb-084-058-161-075.pools.arcor-ip.net) joined #pypy.08:06
dmitrey (~quassel@77.121.195.200) joined #pypy.08:06
Nick change: csenger|` -> csenger08:07
JaRoel|4d (~jaroel|4d@office.fourdigits.nl) joined #pypy.08:07
nirbheek (~nirbheek@gentoo/developer/flyingspaghettimonster/nirbheek) left irc: Read error: Connection timed out08:08
mikefc__ (3cf2f0c4@gateway/web/freenode/ip.60.242.240.196) left irc: Ping timeout: 264 seconds08:08
nirbheek (~nirbheek@gentoo/developer/flyingspaghettimonster/nirbheek) joined #pypy.08:10
mikefc_lahwran: if you check the irc logs during the last week when the sprint was on, you can see some talk about it. 08:18
mikefc_i think the speed was unimpressive08:18
mikefc_but the speed at which it was done was very impressive :)08:18
gehho2_ (~gehho2@ZJ040192.ppp.dion.ne.jp) joined #pypy.08:19
bbot2_ (~bbot2@wyvern.cs.uni-duesseldorf.de) joined #pypy.08:19
intchanter (~intchante@c-76-27-100-38.hsd1.ut.comcast.net) got netsplit.08:19
gehho2 (~gehho2@ZJ040192.ppp.dion.ne.jp) got netsplit.08:19
Fluxid (~fluxid@schranz.io) got netsplit.08:19
bbot2 (~bbot2@wyvern.cs.uni-duesseldorf.de) got netsplit.08:19
jell (~jell@host-134-23.dmtec.eu) got netsplit.08:19
forrestv (~forrestv@unaffiliated/forrestv) got netsplit.08:19
guibou (~guibou@kraken.insecable.net) got netsplit.08:19
guibou (~guibou@kraken.insecable.net) returned to #pypy.08:20
Fluxid (~fluxid@schranz.io) returned to #pypy.08:21
intchanter (~intchante@c-76-27-100-38.hsd1.ut.comcast.net) returned to #pypy.08:21
Nick change: Fluxid -> Guest9374208:22
Tobu (~Tobu@unaffiliated/tobu) left irc: Read error: Operation timed out08:22
amaury (~amaury_@74.125.57.34) joined #pypy.08:25
jell (~jell@host-134-23.dmtec.eu) returned to #pypy.08:26
jell_ (~jell@host-134-23.dmtec.eu) joined #pypy.08:27
jell_ (~jell@host-134-23.dmtec.eu) left irc: Client Quit08:28
JaRoel|4d (~jaroel|4d@office.fourdigits.nl) left irc: Remote host closed the connection08:28
JaRoel|4d (~jaroel|4d@office.fourdigits.nl) joined #pypy.08:29
gehho2 (~gehho2@ZJ040192.ppp.dion.ne.jp) got lost in the net-split.08:30
bbot2 (~bbot2@wyvern.cs.uni-duesseldorf.de) got lost in the net-split.08:30
forrestv (~forrestv@unaffiliated/forrestv) got lost in the net-split.08:30
Telugodu (~rambaho@202.3.77.231) left irc: Remote host closed the connection08:31
Telugodu (~rambaho@202.3.77.231) joined #pypy.08:31
arigato (~arigo@adsl-89-217-201-171.adslplus.ch) joined #pypy.08:32
Telugodu_ (~rambaho@202.3.77.231) joined #pypy.08:33
kenaan12amauryfa default 119901f428b3b1 15/pypy/module/_io/: issue1017: In non-blocking mode, read() should return None instead of raising EAGAIN.08:33
CIA-1703afa 07roundup * 10#1017/io.open compatibility error: 08:33
CIA-17[resolved] Fixed in 9901f428b3b1, thanks for the report!08:33
CIA-17Note that f.read() without argument was already correct. * 14https://bugs.pypy.org/issue101708:33
Telugodu_ (~rambaho@202.3.77.231) left irc: Client Quit08:34
Telugodu (~rambaho@202.3.77.231) left irc: Client Quit08:34
Telugodu (~rambaho@202.3.77.231) joined #pypy.08:35
Telugodu (~rambaho@202.3.77.231) left irc: Read error: Connection reset by peer08:35
zain (~textual@87.69.91.91) joined #pypy.08:37
Telugodu (~rambaho@202.3.77.231) joined #pypy.08:37
Telugodu_ (~rambaho@202.3.77.231) joined #pypy.08:38
Telugodu_ (~rambaho@202.3.77.231) left irc: Remote host closed the connection08:38
Tobu (~Tobu@unaffiliated/tobu) joined #pypy.08:39
Telugodu (~rambaho@202.3.77.231) left irc: Client Quit08:40
Telugodu (~rambaho@202.3.77.231) joined #pypy.08:42
Telugodu (~rambaho@202.3.77.231) left irc: Remote host closed the connection08:42
anish_ (anish@nat/redhat/x-myuoluoqsgiyqaos) left irc: Ping timeout: 252 seconds08:44
zain (~textual@87.69.91.91) left irc: Ping timeout: 248 seconds08:45
Telugodu (~rambaho@202.3.77.231) joined #pypy.08:47
zain (~textual@87.69.91.91) joined #pypy.08:48
CIA-1703maggot 07roundup * 10#1017/io.open compatibility error: [chatting] Thank you for a fast fix!) * 14https://bugs.pypy.org/issue101708:48
lucian (~lucian@cpc1-newc15-2-0-cust84.gate.cable.virginmedia.com) joined #pypy.08:51
zain (~textual@87.69.91.91) left irc: Ping timeout: 245 seconds08:57
anish_ (anish@nat/redhat/x-wixjangwawrzflmt) joined #pypy.09:00
lucian (~lucian@cpc1-newc15-2-0-cust84.gate.cable.virginmedia.com) left irc: Ping timeout: 240 seconds09:01
anish_ (anish@nat/redhat/x-wixjangwawrzflmt) left irc: Ping timeout: 252 seconds09:10
dmitrey (~quassel@77.121.195.200) left irc: Ping timeout: 260 seconds09:10
CIA-1703afa 07roundup * 10#1017/io.open compatibility error: [resolved] last night I worked on the same files, so it was fresh in my head :) * 14https://bugs.pypy.org/issue101709:14
JaRoel (~jaroel|4d@office.fourdigits.nl) joined #pypy.09:16
Nick change: Guest93742 -> WhyWhyWhy09:16
JaRoel|4d (~jaroel|4d@office.fourdigits.nl) left irc: Ping timeout: 248 seconds09:19
anish_ (anish@nat/redhat/x-iurqrygphmiwcuxi) joined #pypy.09:23
Tobu (~Tobu@unaffiliated/tobu) left irc: Ping timeout: 252 seconds09:24
Nick change: gehho2_ -> gehho209:27
fijalhello09:30
mikefc_ (mike@60-242-240-196.static.tpgi.com.au) left #pypy.09:31
mikefc_ (~mike@60-242-240-196.static.tpgi.com.au) joined #pypy.09:31
kenaan12fijal buildbot 11af2f8bedb39e 15/bot2/pypybuildbot/builds.py: oh crap python 2.7 required09:36
bbot2_Started: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-32/builds/1026 [12fijal]09:37
Tobu (~Tobu@unaffiliated/tobu) joined #pypy.09:37
asmeurer (~asmeurer@dhcp-altamirano-166.resnet.nmt.edu) left irc: Quit: asmeurer09:38
dmitrey (~quassel@77.121.195.200) joined #pypy.09:45
tilgovi (~randall@couchdb/developer/tilgovi) left irc: Ping timeout: 244 seconds09:47
pnguyen (~pnguyen@cpe-70-112-214-119.austin.res.rr.com) left irc: Read error: Connection reset by peer09:55
lesshaste (~lesshaste@87-194-206-189.bethere.co.uk) left irc: Quit: Leaving09:56
G2P (~G2P@fw-asn1.ornis.com) joined #pypy.09:56
zain (~textual@bzq-79-182-196-50.red.bezeqint.net) joined #pypy.10:04
pnguyen (~pnguyen@cpe-70-112-214-119.austin.res.rr.com) joined #pypy.10:04
arigatohi10:05
antocunihi10:08
antocuniuhm, something seems very wrong on the py3k branch10:09
antocunirunning a single test which requires a space takes ~11 seconds on py3k, and ~2 on default10:09
lucian (~lucian@93-97-174-114.zone5.bethere.co.uk) joined #pypy.10:10
pnguyen (~pnguyen@cpe-70-112-214-119.austin.res.rr.com) left irc: Quit: pnguyen10:10
bbot2_4Failure: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-32/builds/1026 [12fijal]10:19
fijalwtf10:19
kenaan12fijal buildbot 11ecb37aa5b739 15/bot2/pypybuildbot/builds.py: workdinr & relative positions10:21
bbot2_Started: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-32/builds/1027 [12fijal]10:21
voidspace (~voidspace@87-194-212-65.bethere.co.uk) joined #pypy.10:23
voidspace (~voidspace@87-194-212-65.bethere.co.uk) left irc: Changing host10:23
voidspace (~voidspace@python/psf/voidspace) joined #pypy.10:23
arigatowww.cs.bgu.ac.il/~hendlerd/papers/CAR-STM.pdf10:31
arigatothis is a paper in which the abstract alone gives me new ideas to play with in pypy's stm :-)10:31
lucianarigato: i've found that a good abstract is perhaps the most important part of papers10:35
arigato:-()10:35
arigato:-)10:35
lucianat least from my p.o.v.10:36
lucianalso, these guys seem to have implemented something like kernel-level thread scheduling, but for transactions?10:36
Taggnostr2_ (~quassel@agw-sparknet.utu.fi) joined #pypy.10:36
arigatoyes10:37
arigatothe first of the two basic ideas is of the kind rather-obvious-but-an-excellent-idea10:38
arigatowhy-didn't-I-think-of-that-myself10:38
mikefc_arigato: serializing contention manager?10:41
arigatoyes10:41
mikefc_simple, neat idea.10:41
arigatoyes10:41
mikefc_those benchmark results are nutty.10:43
Tobu (~Tobu@unaffiliated/tobu) left irc: Ping timeout: 272 seconds10:45
lucianit's also possible that RSTM is really terrible with contention10:46
lucianbut yeah, the idea seems intuitively good to me10:46
Nick change: Taggnostr2_ -> Taggnostr310:49
mikefc_yeah. rstm might have been completely shit. so it's gone from shit to not-shit. they haven't seem to have compared it to *other* stm implementations.10:50
Taggnostr3 (~quassel@agw-sparknet.utu.fi) left irc: Quit: No Ping reply in 180 seconds.10:50
Tobu (~Tobu@unaffiliated/tobu) joined #pypy.10:50
Taggnostr2_ (~quassel@agw-sparknet.utu.fi) joined #pypy.10:50
Nick change: Taggnostr2_ -> Taggnostr310:52
voidspace (~voidspace@python/psf/voidspace) left irc: Quit: Bye...10:54
ivan` (~ivan@unaffiliated/ivan/x-000001) joined #pypy.10:56
lizardo (lizardo@nat/indt/x-tjetjjlemzwuejlk) joined #pypy.10:57
voidspace (~voidspace@python/psf/voidspace) joined #pypy.10:58
lucianmikefc_: i think it would've been hard, seeing the level of detail there11:02
lucianthey would probably had to patch w/e other stm for more instrumentation, i think11:03
bbot2_4Failure: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-32/builds/1027 [12fijal]11:04
mikefc_yeah. i'm being cynical. 11:04
fijaloh11:04
fijal:/11:04
mattip (c1a9466d@gateway/web/freenode/ip.193.169.70.109) joined #pypy.11:05
mattipfijal: ping11:05
fijalmattip: pong11:06
mattipare you missing an "hg add" ? this commit 27230fad on numpy-back-to-applevel seems a little too small...11:06
fijalI have no idea which commit you're talking about11:09
fijalfull hash maybe?11:09
kenaan12fijal benchmarks 11dac3a66f6c53 15/lib/jinja2/: Cheat cheat cheat - add jinja2 to benchmarks (benchmakr coming)11:10
kenaan12fijal benchmarks 11f4a31718810d 15/: merge11:10
Nick change: ojii -> ojii|eatingbabie11:10
mattipthe last one on that branch 27230fad511273734a3a4fbae84ed03c96034c5611:10
fijalthat's too long for the hash no?11:11
fijalanyway last one was test commit11:11
fijalto test speed of pushing11:11
mattipso the one from 9 hours ago. changeset is just a single blank line.11:11
witulski (~stupsi@fwstups.cs.uni-duesseldorf.de) joined #pypy.11:11
mattipahh. I thought it was a commit of a new test.11:12
witulski (stupsi@fwstups.cs.uni-duesseldorf.de) left #pypy.11:12
kenaan12fijal buildbot 11d4dc199b5ee5 15/bot2/pypybuildbot/builds.py: cheat, we use benchmarks checkout of jinja, what can go wrong...11:13
mattip (c1a9466d@gateway/web/freenode/ip.193.169.70.109) left irc: Quit: Page closed11:13
bbot2_Started: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-32/builds/1028 [12fijal]11:14
Arach (~arach@128-75-172-73.broadband.corbina.ru) left irc: Ping timeout: 252 seconds11:30
antocuniarigato: about your last comment on the blog: I think that another point of view is that once we integrate the STM with the jit, a lot of read/write barriers can be eliminated, because e.g. for virtuals we know that there is no possibility of conflicts11:35
antocuniso, the typical jitted code should be not much slower than it's now11:36
antocunior I am completely wrong?11:36
arigatono11:36
arigatobut maybe you are too optimistically estimating it11:37
antocunibecause in practice we still get a lot of traces without virtuals?11:37
arigatono, because even if you remove 50% of virtuals, it still leaves 50%11:37
arigatoso we also need to do more work to optimize the non-virtual case11:38
antocuniyes, that's more or less what I wanted to say :-)11:38
antocuniuhm, I wonder how hard it is to keep a poor's man reference counting11:38
arigatoin other words, if you compare the speed of *jitted* code, before and after applying stm11:38
arigatothen stm-ing the nonvirtuals still has a potentially huge impact11:39
antocuniwhich e.g. tells you if there is only one reference to the object, or more11:39
antocunithen, you could put a guard_number_of_references(1), and have stm free code in that case11:39
arigatoantocuni: yes, something like that, but not by guarding on the number count11:40
arigatoit's probably possible to have code in the GC that maintains a flag that means "I'm thread-local"11:40
antocuniah, I see11:40
antocuniwell, the 1-vs-many counter might be useful in other areas too11:40
antocunibut I see the point11:40
arigatoyes, but I think it's wrong actually :-)11:41
arigatoe.g. there might be only one reference to x stored in a global object11:41
arigatobut still two transactions that access x concurrently11:41
antocuniuhm, right11:41
antocuniwe would need a transitive closure of the number of references, or something like that11:43
antocunibut in that case, it'd be hard to maintain I guess11:43
Action: antocuni --> lunch11:43
Arach (~arach@128-75-162-28.broadband.corbina.ru) joined #pypy.11:45
arkx (~aku@eagleflow.fi) left irc: Quit: Lost terminal11:55
Nick change: ojii|eatingbabie -> ojii11:58
squiddy (~squiddy@g224198052.adsl.alicedsl.de) left irc: Quit: Leaving11:58
dmitrey (~quassel@77.121.195.200) left irc: Remote host closed the connection11:59
arkx (~aku@eagleflow.fi) joined #pypy.12:08
Taggnostr3 (~quassel@agw-sparknet.utu.fi) left irc: Ping timeout: 240 seconds12:09
azanella (~azanella@189.6.80.131) joined #pypy.12:10
lucian (~lucian@93-97-174-114.zone5.bethere.co.uk) left irc: Remote host closed the connection12:11
nedbat (~nedbat@python/psf/nedbat) joined #pypy.12:15
Tobu (~Tobu@unaffiliated/tobu) left irc: Ping timeout: 272 seconds12:25
Nick change: arkx -> arkx_12:25
Nick change: arkx_ -> arkx12:25
intchanter (~intchante@c-76-27-100-38.hsd1.ut.comcast.net) left irc: Ping timeout: 248 seconds12:27
intchanter (~intchante@c-76-27-100-38.hsd1.ut.comcast.net) joined #pypy.12:29
Taggnostr2_ (~quassel@agw-sparknet.utu.fi) joined #pypy.12:30
Nick change: Taggnostr2_ -> Taggnostr312:32
zain (~textual@bzq-79-182-196-50.red.bezeqint.net) left irc: Quit: Textual IRC Client: http://www.textualapp.com/12:37
zain (~textual@bzq-79-182-196-50.red.bezeqint.net) joined #pypy.12:40
Tobu (~Tobu@2a01:e35:8a2c:b230:213:d3ff:fe85:5614) joined #pypy.12:47
Tobu (~Tobu@2a01:e35:8a2c:b230:213:d3ff:fe85:5614) left irc: Changing host12:47
Tobu (~Tobu@unaffiliated/tobu) joined #pypy.12:47
anish_ (anish@nat/redhat/x-iurqrygphmiwcuxi) left irc: Ping timeout: 245 seconds12:48
voidspace (~voidspace@python/psf/voidspace) left irc: Quit: Goodbye...12:50
lucian_ (~lucian@93-97-174-114.zone5.bethere.co.uk) joined #pypy.12:53
lizardo (lizardo@nat/indt/x-tjetjjlemzwuejlk) left irc: Quit: Leaving12:53
lizardo (lizardo@nat/indt/x-tqdxwqhlsxscasit) joined #pypy.12:53
inhahe (~inhahe@c-50-128-212-190.hsd1.fl.comcast.net) left irc: Read error: Connection reset by peer13:02
inhahe (~inhahe@c-50-128-212-190.hsd1.fl.comcast.net) joined #pypy.13:03
amauryhehe, open("/tmp/t.py\x00unlikely") correctly fails on CPython2.7, but succeeds with 3.213:07
exarkunWhat does it open?13:08
Alex_Gaynorexarkun: /tmp/t.py13:08
Alex_Gaynor(C strings.  Not even once.)13:08
exarkun:/13:08
amaurypypy happily truncates as well13:09
arigatobah13:10
arigatobug report time for python 3.2?13:10
exarkunHow does os.path.exists treat a path like that?13:11
Alex_Gaynorarigato: amaury filed it already :)13:11
arigato:-)13:11
Alex_Gaynorexarkun: os.path.exists calls os.stat which raises an error on NUL in the str13:11
Alex_Gaynorexarkun: open() on 2.x handles it correctly as WELL13:11
arigatonobody feels like changing the channel topic?13:12
arigatojust so that I can set it to "snow, snow! :-)" again13:12
DasIch (~DasIch@p4FFDE139.dip.t-dialin.net) joined #pypy.13:18
Tobu (~Tobu@unaffiliated/tobu) left irc: Ping timeout: 252 seconds13:24
Tobu (~Tobu@unaffiliated/tobu) joined #pypy.13:29
stefanop (~stefanop@77.72.196.122) joined #pypy.13:31
stefanophi everybody, I'm playing around with the json decoder of pypy, trying to speed it up, and I was wondering: is ''.join(list) the fastest way to concatenate strings?13:34
Da_Blitzb/me was doing some testing the other day and found that in some situations using join was not the fastest13:39
Da_Blitzwhen in doubt, benchmark it13:39
stefanopyeah, I tried with += concatenation, and it slows down quite a bit13:40
Da_Blitzin my case that was actually faster than using join13:40
stefanopinteresting13:40
Da_Blitztook me by supprise13:41
Da_Blitzi have seen things like this before so i normmaly maintain a directory of benchmarks in my source code now13:41
stefanopI'll give it another try, in the meantime are you aware of any other way of concatenating strings that may be interesting?13:41
exarkunHow about __pypy__.bytebuffer?13:41
Da_Blitzif i do somting for performance reasons, i make myself code both ways of doing it and spit out the anwser13:41
exarkunOr StringBuilder (but that's probably still RPython-only)13:42
Da_Blitzmakes it easier to test across interpreters and platforms13:42
stefanop@Da_Blitz you're right i'll give it a shot13:42
stefanop@exarkun StringBuilder is still a bit slow, I'll try with bytebuffer, just out of curiosity13:43
voidspace (~voidspace@87-194-212-65.bethere.co.uk) joined #pypy.13:43
voidspace (~voidspace@87-194-212-65.bethere.co.uk) left irc: Changing host13:43
voidspace (~voidspace@python/psf/voidspace) joined #pypy.13:43
aboudreault (~alanb@osgeo/member/aboudreault) joined #pypy.13:43
exarkunHuh.  I had the impression StringBuilder was supposed to be the fastest thing.13:43
stefanopexactly13:45
stefanopit was supposed, maybe it's just my benchmark13:45
bbot2_3Success: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-32/builds/1028 [12fijal]13:45
arigatoStringBuilder is RPython-only.  it works if you import it and run on top of cpython or pypy, but it's a slower emulation mode then13:48
fijalarigato: there is an applevel one too13:48
arigatoah, *and* bytebuffer()?  ok, I forgot13:48
fijal__pypy__.StringBuilder()13:50
fijalstefanop: can I have your benchmark?13:53
stefanopI quickly edited https://bitbucket.org/pypy/benchmarks/src/f04d6d63ba60/own/json_bench.py and working directly on pypy/modified-2.7/json/decoder.py13:55
stefanopnow I'm thinking on writing something different, for directly comparing different concatenation methods13:56
arigatoI'm thinking about turning stm accesses to PyFrames into regular locked accesses13:57
arigatowith correct optimization about the common case, which is accesses from only one thread13:58
arigatoit needs (again) a bit of care to avoid deadlocks13:58
Da_Blitzstefanop: i take back what i said about join13:59
Da_Blitzi redid the benchmark with random args13:59
Da_Blitzinstead of reusing the same args on every iteration and join comes up faster13:59
arigato(we could use locks everywhere instead of stm, but then the problem of deadlock becomes unavoidable)13:59
dmalcolm (~david@c-24-61-12-82.hsd1.ma.comcast.net) left irc: Quit: Leaving13:59
arigato(I mean unavoidable automatically --- and would require lots of manual placements, to end up in a jython-like approach)14:00
stefanopDa_Blitz: that's interesting, thanks! I wonder if we can come up with some other efficient way of concatenating strings, though... 14:01
fijalstefanop: how is decoder concatenating btw?14:01
fijalstefanop: I wrote the encoder btw14:01
fijaland StringBuilder is by far the fastest14:01
arigatoin theory we could have a GC-aware builder that is even faster14:02
stefanopfijal: json/decoder.py is using the join approach14:02
Alex_Gaynorarigato: what do you mean GC-aware?14:02
stefanopfijal: cool, I read your blogpost14:02
arigatoAlex_Gaynor: something like: collect all strings in a list, but at the next minor collection, move away not the list of objects but instead creating the join on the strings (unsure about it)14:03
Alex_Gaynorarigato: ah, I wonder if that's not a bit too clever :)14:03
Tobu (~Tobu@unaffiliated/tobu) left irc: Ping timeout: 252 seconds14:03
arigato:-)14:04
fprimex (~fprimex@brent-macbook.sc.fsu.edu) joined #pypy.14:04
arigatoor at least, we can collect strings in a number of discontiguous buffers, and join them at the end14:05
arigatoto avoid even the amortized non-linear cost14:05
fijalarigato: the problem with fast encoding is predicting end size14:05
fijalstefanop: are you looking at what file?14:06
arigatowell, it can also be combined with strbuf or a similar optimization at object level, and/or we can think about more JIT optimizations...14:06
arigato(sorry, just trying to state all open possibilities)14:07
Action: fijal would like strbuf to be merged first14:08
stefanopfijal: for the benchmark you mean? I'm actually dumping into strings as you do in yours, and then converting them back to objects14:09
exarkunOf course, what you're probably going to do with some json after you finish encoding it is dump it into a socket14:09
exarkunAnd you don't need to concatenate any strings for that, you just use writev() instead.14:09
exarkunSo fast "".join replacement is a bit of a red herring ;)14:10
fijalexarkun: yes, I was looking there and what you *actually* want for fast json14:11
Alex_Gaynorexarkun: oh man, writev/readv are awesome, and totally underused14:11
fijalis something incremental that still builds it piece by piece14:11
fijaland sends only chunks that are big enough to sockets14:11
fijalie you don't want to do writev for each 3 byte chunks14:11
arigatoexarkun: yes, but writev() does't really solve anything, because in pypy you can't pass pointers to inside RPython strings to it14:11
Alex_Gaynorarigato: you can if they're non-movable (unlikely for JSON blobs, admittingly)14:12
arigatoyes14:12
fijalarigato: for no good reasons other that we don't feel like doing pinning14:12
arigatowell14:12
arigatofijal: then you end up with the issue of measuring the time it takes to pin and unpin 2345 small strings14:12
fijalI'm not saying you should pass a 3-byte strings there at all14:13
Taggnostr3 (~quassel@agw-sparknet.utu.fi) left irc: Remote host closed the connection14:13
fijalI'm saying you should probably build it until it's some length, like 1000 or 100 or so14:13
fijaland then pass it14:13
fijalso a fast method of building is still cool14:13
fijalbut an extra copy is avoided14:13
fijalif we're talking what-can-be-potentially-achieved14:13
arigatoyes, but then you can tweak the length to be just above the limit of moving allocations14:13
arigato(so then writev() is useful again)14:14
fijalno, because that: a) provides artificial limits b) you mostly want it to be just-below so you don't gc.collect too often14:14
fijalnyway14:14
arigatono14:14
fijalthis is all a bit academic14:14
arigatothe limit of moving allocations does not mean that it's allocated immediately old14:15
fijalah ok14:15
arigatoyou get a non-movable but still young object14:15
fijalwe don't have a good incremental json encoder btw :)14:15
arigato:-)14:15
fijaland one of the reasons why not is because yield is an obscure thing to use with that pattern14:15
fijalyou cannot provide one that nicely yields chunks and does not come up with total code duplication14:16
Alex_Gaynoryield from14:16
Alex_Gaynor:)14:16
exarkunfijal: Why?14:16
fijalAlex_Gaynor: I don't think it does work14:16
exarkunYou mean because there is a json encoder written already, and none of its code can be re-used for another encoder?14:17
fijalexarkun:  no no no14:17
fijalthe current encoder has also a fair bit of code duplication because of that issue14:17
arigatoI suppose you can write  "s=accumulate(...); if s is not None: yield s" but it's admittedly heavy14:17
fijalarigato: that's slowish14:17
exarkunI don't understand the problem.14:17
fijalexarkun: ok, so you write a function that yields and does it recursively for lists14:18
fijallike that: http://paste.pocoo.org/show/539956/14:19
fijalnow change is so you either yield or append to a buffer14:19
fijalmaybe I'm just missing something14:19
Alex_Gaynorfijal: for elemn in lst: yield from decode(elem)14:19
Alex_Gaynorworks I think14:19
exarkunfijal: I still don't understand.14:19
fijalAlex_Gaynor: we don't have yield from go away14:20
exarkunI'm sure I'm missing something.14:20
fijalexarkun: well, change this function so it does something like "if buffer_full: yield buffer value else: append to buffer14:20
fijalremember lists can be nested14:20
exarkunYou have to avoid yielding except when the buffer is full?14:20
fijalyes14:21
exarkunit's the yield that's expensive?14:21
fijalyou don't avoid yielding becuase yield is expensive14:21
fijalyou do it because passing 3 bytes to a socket does not make much sense14:21
Alex_Gaynorfijal: py3k man, it's the future14:21
exarkunYou can build up a large enough buffer in the caller.14:21
exarkunYou don't need to do it at every part of the encoder.14:21
fijalexarkun: ok, but then it becomes expensive14:22
exarkunbecause of the yielding?14:22
fijalif I have a list that's 17-layers deep I would rather avoid 17 yields for each element14:22
exarkunThat's not a problem that the jit can solve?14:23
fijalI want the lowest possible level of recursive call to be able to append to a buffer itself14:23
exarkunWhy is recursion bad?14:23
fijalwell14:23
fijalit's an equivalent of 17 calls no?14:24
fijalwe will never get acceptable performance if we have to do a crazy amount of calls to get each element14:24
exarkunI don't know.  I don't really know the cost of anything on PyPy. :)14:24
dmitrey (~quassel@77.121.195.200) joined #pypy.14:24
Alex_Gaynorfijal: I added PyPy to https://us.pycon.org/2012/community/sprints/projects/14:24
exarkunSo something like this isn't going to be best?  http://twistedmatrix.com/trac/browser/trunk/twisted/web/_flatten.py#L9714:24
fijalAlex_Gaynor: I'm probably not staying much for sprints, can't afford it14:25
Alex_Gaynorfijal: ok14:25
Alex_Gaynorfijal: deeply nested is less common than just "large" IME14:25
fijalexarkun: as in "can it compete with a handcrafted C solution with constant buffers" fast, no this is not very good14:26
exarkunIt seems like coroutines (real ones, or whatever stackless has probably) let you do what you want.  But maybe those are slow too.14:26
fijalthose are slow for now because of JIT support14:27
fijalbut they should not be too slow14:27
exarkunNaively, I would expect that the jit could unroll loops going into and out of a generator, and you wouldn't really care how often you yielded.14:27
fijalfelt obscure to use it though if you ask me14:27
exarkunI want code to be just as fast whether it's all stuffed inside a function or whether it's woven together from the caller of a generator and the generator itself.14:27
fijalexarkun: so ok, yield is slower than it should be14:28
exarkun(of course it's easy to want things)14:28
fijalbut also an arbitrarily deeply recursive generator is a hard thing to optimize14:28
exarkunThe code I linked to isn't technically arbitrarily deeply recursive14:28
exarkunIt never goes deeper than 1 or 2 levels (depends how you count)14:29
fijalok14:29
fijaljson does though14:29
fijalI think with 1-2 levels you're okish14:29
exarkunmaybe json should be written like the code I linked to :)14:29
fijalbut [citation needed]14:29
fijalno, because _flatten can call _flatten arbitrarily deep no?14:29
fijal_flattenElement14:29
fijal150            for element in _flattenElement(request, root.children, slotData,14:30
fijal151                                    renderFactory, False):14:30
fijal152                yield element14:30
fijalthis part precisely14:30
Tobu (~Tobu@unaffiliated/tobu) joined #pypy.14:30
arigato(slow, slow! ...sorry)14:30
fijalexarkun: ah btw, simplejson has 3 copies of handling of primitives14:30
arigatouh14:30
arigato(snow, snow! ...sorry)14:30
fijalprecisely because of that reason14:31
exarkunfijal: Hm.14:31
exarkunfijal: That's interesting.  That looks like a bug.14:31
gtaylor (~gtaylor@108-196-160-156.lightspeed.tukrga.sbcglobal.net) joined #pypy.14:31
exarkunAll of the unit tests still pass if I change those lines to `yield _flattenElement(request, root.children, slotData, renderFactory, False)´ :)14:32
exarkunfijal: That removes the arbitrary deepness, right?14:32
Alex_Gaynormaybe you need more tests14:32
exarkunAlex_Gaynor: I doubt it.14:32
exarkunIt's certainly possible.14:32
exarkunI have 100% line/branch coverage of this code, though.14:32
nedbatexarkun: i also bow down to false idols...14:33
exarkunProbably not quite 100% MCDC and certainly not 100% combinatorial coverage14:33
exarkunStill...14:33
Alex_Gaynornedbat: says the enabler ;)14:33
nedbat:)14:33
apoirier (~apr@210.168.3.109.rev.sfr.net) joined #pypy.14:33
exarkunAnyway, logically it makes sense that the two versions are equivalent.14:34
amaurywasn't "yield from" invented for this case?14:35
exarkunI don't know why it was invented.14:36
amauryto replace "for x in seq: yield x"14:36
amaury"yield from x"14:36
exarkunBut I can already replace it14:36
exarkunSo I guess "yield from" is redundant.14:36
exarkunSo I still don't know why it was invented. ;)14:36
amauryyes, but this yields an iterable14:37
amaury=1 element14:37
exarkunYes?14:37
exarkunThat works fine.14:37
exarkunIt's what I want, even.14:37
exarkunfijal suggests it works better than what "yield from" would do.14:37
whitelynx (~whitelynx@63.241.75.144) joined #pypy.14:38
amauryBut it's different!14:39
amauryhttp://paste.pocoo.org/show/539968/14:39
fijalexarkun: well, for what is worth I'm not claiming this can't be made fast, I'm just claiming I wasn't able to make it fast on that day14:39
exarkunfijal: Sure14:39
exarkunamaury: It's not different in _this_ case.14:39
exarkunLanguage design is off-topic for #pypy though.14:40
dmitreyfijal: could I commit the current state of empty_like etc from https://bugs.pypy.org/issue1008?14:42
fijaldmitrey: no, it does not come with tests, it's not doing exactly the same thing as cpython one and it's incomplete14:45
fijalas in it won't really show up when you import numpypy would it?14:46
fijalalso zeros_like is different than cpython's implementation why?14:46
Tobu (~Tobu@unaffiliated/tobu) left irc: Read error: Connection reset by peer14:46
Tobu (~Tobu@unaffiliated/tobu) joined #pypy.14:46
dmitreywhy zeros_like is different? I used copy-paste14:46
dmitreyfrom current cpython numpy trunc14:47
fijalis it the same?14:48
dmitreyI don't understand the question, let me repeat once again: I have copy-pasted zeros_like and ones_like code from numpy git trunc14:49
fijalhm14:49
fijalI have a version that uses copyto14:49
mat^2 (~mathias@212.130.113.35) joined #pypy.14:49
dmitreyall() and any() also have restricted usage - they doesn't work with axis, that 100x times more important, that absence of nadarray subclass parameter, but it is already committed14:49
dmitreyas for tests - of course I would reorginize them as it is done in PyPy trunc, into test_ones_like func14:50
dmitreyetc14:50
dmitreywell, maybe I haven't updated numpy to latest git version and that's why it differs14:52
dmitreyis copyto essentially better than .fill(0)?14:53
fijalI don't think it's better I just want it to divert as little as possible14:53
dmitreyand does numpypy already have the func copyto?14:53
fijalbut fine I guess, it's ok to leave fill especially that copy to is not implemented14:53
fijalbut we'll have to implement copyto one day anyway14:54
dmitreyso will it be ok to commit the code right now?14:54
antocunipff14:54
antocunion the py3k branch, the startup() method of the sys module makes an appexec which "import io"14:55
fijaldmitrey: tests14:55
antocunithis takes a loooong time when on top of cpython14:55
fprimex (~fprimex@brent-macbook.sc.fsu.edu) left irc: Quit: http://www.fprimex.com15:00
Rhy0lite (dje@nat/ibm/x-fhkqwjhpkgsgxmao) joined #pypy.15:01
dmitreyfijal: the /test_lib_pypy/numpypy has only 1 subfolder "core" with only 1 file "test_fromnumeric", is that ok? I intend to create funcs test_zeros_like, test_ones_like, test_empty_like funcs there. Or, will it be ok to create a single func test_constructors_like there? (do the tests run from dir(numpypy) or from dir(AppTestFromNumeric))?15:03
fijaladd test_numeric.py in core/ which will have AppTestNumeric(...)15:03
fijalthat will have 3 tests15:04
dmitreywhich command prompt line for hg should I use to add file and which one - for committing changes?15:05
antocunipff**215:05
fijaldmitrey: hg add for adding15:05
antocuniand the sys appexec is slow because it ends up in doing "__import__('locale')"15:05
fijalhg diff for diffing15:05
fijalpy.test for testing15:05
fijaland paste the diff somewhere, I'll commit it15:06
antocunijust to get the encoding for stdin15:06
dmitreyok15:06
antocunibtw, I wonder whether it's a good thing that tests depend on the locale settings15:07
antocunimaybe I should just hardcode "ascii" as the encoding of sys.std{in,out,err} when testing15:07
zain (~textual@bzq-79-182-196-50.red.bezeqint.net) left irc: Quit: Computer has gone to sleep.15:24
dmitreyfijal: I have added test_numeric.py via hg, but it requires committing, AFAIK, and I have no edit rights for repository. I put contents of test_numeric.py in http://pastebin.com/GCE14bVY15:25
kushal (~kdas@114.143.160.106) joined #pypy.15:26
kushal (~kdas@114.143.160.106) left irc: Changing host15:26
kushal (~kdas@fedora/kushal) joined #pypy.15:26
fijaldmitrey: you can add it and you can then do hg diff and post the diff somewhere15:26
fijalor you can have a clone on bitbucket and issue a pull request15:27
fijalwhatever is easier15:27
dmitreywell, currently I put the diff into http://pastebin.com/eRzQtGE215:28
fijalbut it's not a full diff, it's missing numeric.py right?15:28
fijalhg diff would should you what you want15:28
dmitreydo you mean the line dmitrey@staregazer:~/Install/pypy/pypy/module/test_lib_pypy/numpypy/core$ hg diff test_numeric.py 15:29
dmitrey]15:29
dmitrey?15:29
fijalno, just hg diff15:30
dmitreyso it's full output from hg diff 15:30
fijaldid you change numeric.py?15:30
dmitreyno15:31
fijalwell?15:31
fijalyou want to add those changes there no?15:31
fijalwhere are your zeroes_like changes?15:31
dmitreytest_numeric.py was created by me, as you said, I haven't deal with other files. As for the funcs zeros_like etc, they are here:http://pastebin.com/yUznKBGV 15:32
khs (~khs@151.43.202.84.customer.cdi.no) left irc: Ping timeout: 240 seconds15:33
fijalyes15:33
fijalbut it's impossible for you to run those tests since you didn't change numeric.py right?15:33
dmitreyI run them from terminal one-by-one15:33
fijalok15:33
fijalthat's not how we run it :)15:33
fijaluse py.test to run them15:34
fijalit comes included, you run it as15:34
fijal<checkout_dir>/pytest.py <test_numeric.py path>15:34
fijalwhen they pass you created a full patch15:35
dmitreywell, currently I have (application-level) AttributeError: 'module' object has no attribute 'empty_like'15:38
dmitreyetc, because zeros_like etc are not committed yet15:38
fijalyou don't have to commit them15:39
dmitreyand absent in the file/directory where they should be present15:39
fijalyou have to put them in correct files15:39
dmitreywhich dir/file?15:39
fijallib_pypy/numpypy/...15:39
fijalthere somewhere15:39
fijalcore/numeric.py probably15:39
dmitreyand file name?15:39
dmitreyok15:40
fijalcorresponding file from the original numpy15:40
dmitreyin original numpy empty_like somewhere in c code. We cannot exactly math the numpy files because some of them are in c, some cython, etc, and sometimes some funcs move from one file to another15:41
fijalI think numeric.py is correct15:42
fijalbecause that's where zeros_like lives15:42
dmitreyyes, so le it be /numpypy/core/numeric.py ok?15:43
kenaan12fijal buildbot 1198e265ee14d4 15/bot2/pypybuildbot/master.py: an attempt to expose numpy readiness15:44
fijalyes15:44
tumbleweed...and published. /me waits for builds https://launchpad.net/ubuntu/+source/pypy15:46
bbot2_ (~bbot2@wyvern.cs.uni-duesseldorf.de) left irc: Quit: buildmaster reconfigured: bot disconnecting15:46
bbot2 (~bbot2@wyvern.cs.uni-duesseldorf.de) joined #pypy.15:46
dmalcolm (david@nat/redhat/x-hlywiwcnxwroelts) joined #pypy.15:46
kenaan12arigo stm 119e1713213887 15/pypy/rpython/lltypesystem/test/test_lltype.py: More tests.15:49
kenaan12arigo stm 111fd090dc1127 15/pypy/rpython/lltypesystem/: Add an official way to ask some Struct whether a {get,set}interiorfield() targets an immutable field or not.15:49
kenaan12arigo stm 116a0e53c03ecb 15/pypy/rpython/lltypesystem/: Simplify.15:49
kenaan12arigo stm 116776525c81d5 15/pypy/rpython/lltypesystem/: Must also be supported if the outermost container is an array.15:49
kenaan12arigo stm 11d8e6a730661d 15/pypy/translator/stm/: Implement proper immutability detection in {get,set}interiorfield(). This lets *all* our RPython-level 'string[index]' ...15:49
kenaan12arigo stm 111471ad7b2ff2 15/pypy/rpython/: Propagate this flag from the RPython class.15:49
kenaan12arigo stm 110774830dfdeb 15/pypy/translator/stm/: Use _stm_access_directly_ to mean that all field accesses should be direct.  Should be combined with some form of locking.15:49
kenaan12arigo stm 11cd57e12abc24 15/pypy/: Give this flag to PyFrames.  Write in TODO.txt the issues that this opens.15:49
kenaan12arigo stm 1100a838f5088a 15/pypy/translator/stm/: Directly access also any array present as a field on the stm_access_directly object.15:49
kenaan12arigo stm 11312bf884e018 15/pypy/translator/stm/: Finish the previous checkin.15:49
kenaan12arigo stm 11b6c8cd8207c6 15/pypy/rpython/: Add a new type of immutability: "mutable owned".15:49
kenaan12arigo stm 113ae2aedede04 15/pypy/: Adjust PyFrame and the stm transformer.15:49
kenaan12arigo stm 11539ec3f053ef 15/pypy/translator/stm/test/test_transform.py: Write down a next test, not implemented so far.15:49
kenaan12arigo closed-branches 11334cec07b153 15/: Merge closed head 4d9eda6790fd on branch better-jit-hooks15:51
kenaan12arigo closed-branches 1169db50c53708 15/: Merge closed head f36626591158 on branch numpypy-frompyfunc15:51
kenaan12arigo closed-branches 11b9621500bbe4 15/: Merge closed head e5b79894ad1e on branch numpypy-is_contiguous15:51
kenaan12arigo closed-branches 11d0e6dbc1c951 15/: Merge closed head b5b4522440a5 on branch numpypy-axisops15:51
kenaan12arigo closed-branches 1151aed7023c03 15/: Merge closed head 08302909741e on branch numpy-indexing-by-arrays15:51
kenaan12arigo closed-branches 118102a8ae2713 15/: Merge closed head 8e57f6c0502b on branch numpypy-ufuncs15:51
kenaan12arigo closed-branches 11bb014819a808 15/: Merge closed head 12c695258f06 on branch numpypy-shape-bug15:51
kenaan12arigo closed-branches 1172656112790d 15/: re-close this branch15:51
arigato</spam>15:51
fijalcool, thanks15:51
fijalI think I'm by far the biggest spammer on closed-branches aprt :)15:51
arigato:-)15:52
kenaan12arigo stm 11655478ab5af1 15/pypy/translator/stm/test/test_transform.py: Missing import.15:52
fijalok15:53
fijalso my default chrome is configured so clicking on a .py file opens notepad under wine15:53
fijalit's great that it can work, but seriously WTF?15:54
tumbleweedlol15:55
kenaan12fijal buildbot 1117f934fc60f2 15/bot2/pypybuildbot/: make it a subclass of File instead15:56
bbot2 (~bbot2@wyvern.cs.uni-duesseldorf.de) left irc: Quit: buildmaster reconfigured: bot disconnecting15:56
zain (~textual@tony11-128-100.inter.net.il) joined #pypy.15:56
bbot2 (~bbot2@wyvern.cs.uni-duesseldorf.de) joined #pypy.15:56
khs (~khs@151.43.202.84.customer.cdi.no) joined #pypy.15:56
fijalhttp://buildbot.pypy.org/numpy-status/51707%3A9901f428b3b1.html15:56
fijalarigato: ^^^15:56
Alex_Gaynorfijal: should have teh revision in the HTML15:58
Alex_Gaynorarigato: isn't ->... a little obscure?15:58
arigatoAlex_Gaynor: yes15:58
arigatoit's obscure to put it in immutable_fields in the first place, but it's more natural than inventing yet another name15:59
fijalAlex_Gaynor: which version?15:59
Alex_Gaynorfijal: http://buildbot.pypy.org/numpy-status/51707%3A9901f428b3b1.html16:00
Alex_Gaynorfijal: it should have the hg revision of pypy it was generated from16:00
arigatoAlex_Gaynor: would it be better?   fieldname->116:00
fijaloh right16:00
pnguyen (~pnguyen@cpe-70-112-214-119.austin.res.rr.com) joined #pypy.16:00
fijalarigato: can we have:16:00
Alex_Gaynorarigato: not especially.  What precisely does it indicate anyways?16:00
fijal_fields_info_ = [Immutable('name'), ImmutableList('name2')]?16:00
fijalinstead of this cryptic JS-like syntax?16:00
arigatoAlex_Gaynor: it's documented in rclass16:01
fijalor _fields_hints_ = ...16:01
Alex_Gaynoralternatively _fields_info_ = {"name": [Immutable]}16:01
fijaleven {"name": "immutable"} is better16:01
squiddy (~squiddy@g224198052.adsl.alicedsl.de) joined #pypy.16:03
tumbleweedI swear someone gave me feedback on http://anonscm.debian.org/gitweb/?p=collab-maint/pypy.git;a=blob;f=debian/patches/test_unix_socket_connect but I can't see it in my irclogs / the bug tracker https://bugs.pypy.org/issue98716:06
vad (~vad@77.72.196.122) joined #pypy.16:07
Nick change: lucian_ -> lucian16:08
kenaan12fijal buildbot 118d18c2d75424 15/bot2/pypybuildbot/builds.py: add symlinking16:11
bbot2Started: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-32/builds/1029 [12fijal]16:12
plm (~plm@65.111.170.40) joined #pypy.16:12
tumbleweedah it was in #ctpug. fijal: you said "pffff" :)16:16
arigatore "->...": it's not working correctly anyway16:17
fijalAlex_Gaynor: you said something about cleaning up the numready didn't you ;-)16:18
Alex_Gaynorfijal: yes, doing it now16:19
fijalif so, feel free to add stuff like hg revision16:19
Alex_Gaynorwill do :)16:19
CIA-1703Dmitrey 07roundup * 10#1018/ones(shape,'int') and zeros(shape,'int') doesn't work: (log message trimmed)16:19
CIA-17[new] >>> np.ones([1,2],'int')16:19
CIA-17array([[1, 1]])16:19
CIA-17>>>> np.ones([1,2],'int')16:19
CIA-17Traceback (application-level): * 14https://bugs.pypy.org/issue101816:19
fijalwe have to remove zeros and ones from interp-level eventually16:19
Alex_Gaynorfijal: sure, should be easy16:20
CIA-1703Dmitrey 07roundup * 10#1018/ones(shape,'int') and zeros(shape,'int') doesn't work: 16:21
CIA-17[chatting] I had committed similar issue with 'int16', it was fixed, but this 'int' without16:21
CIA-17number still buggy. I would reopened old ticket inste ... * 14https://bugs.pypy.org/issue101816:21
zain (~textual@tony11-128-100.inter.net.il) left irc: Quit: Textual IRC Client: http://www.textualapp.com/16:21
cocoatomo (~cocoatomo@p2118-ipbf901souka.saitama.ocn.ne.jp) joined #pypy.16:23
amauryfijal: the numpy-status page is broken16:23
Tobu (~Tobu@unaffiliated/tobu) left irc: Ping timeout: 252 seconds16:24
arigato(even without the "->..." hack, pypy-tm's speed went from 10.6x slower to 8.2x slower, so progress)16:24
fijalamaury: in what sense?16:25
amauryah no, it's also broken for "nightly": http://buildbot.pypy.org/nightly   does not work16:25
amauryyou need a trailing /16:25
Tobu (~Tobu@unaffiliated/tobu) joined #pypy.16:25
fijalyes16:25
arigato (~arigo@adsl-89-217-201-171.adslplus.ch) left irc: Quit: See you16:26
stefanop (~stefanop@77.72.196.122) left irc: Remote host closed the connection16:28
JaRoel (~jaroel|4d@office.fourdigits.nl) left irc: Remote host closed the connection16:36
kushal (~kdas@fedora/kushal) left irc: Quit: This computer has gone to sleep16:38
kushal (~kdas@fedora/kushal) joined #pypy.16:42
bja (~bja@69.11.216.98) joined #pypy.16:43
kushal (~kdas@fedora/kushal) left irc: Client Quit16:44
kenaan12alex_gaynor buildbot 116148676b97bb 15/bot2/pypybuildbot/builds.py: this is a dir now16:44
kenaan12alex_gaynor numppy-flatitter 119d3652817442 15/: merged default in16:45
kenaan12alex_gaynor default 11578b2ef8d345 15/pypy/module/micronumpy/tool/: Make numready less horrible.16:45
Alex_Gaynorfijal: there, much less awful now16:45
pnguyen (~pnguyen@cpe-70-112-214-119.austin.res.rr.com) left irc: Quit: pnguyen16:55
fijaldoes it work?16:58
Alex_Gaynorfijal: yes16:58
fijalcan you run a directory?16:58
fijalas in python <directory>16:59
fijal?16:59
Alex_Gaynoryes, that's what __main__.py is for16:59
fijalok16:59
Action: fijal feels horribly unproductive today17:02
fijalI guess I'll at least post info about numpy ready on the blog17:02
fijalpsf.org is nto what I was looking for17:03
plmAre there plan to have pypy ready for ARM?17:05
fijal"plan" yes17:05
fijalplm: feel like donating a buildbot?17:05
plmfijal: what is buildbot?17:06
plmfijal: ahh one arm board?17:06
fijalplm: machine that runs pypy tests17:06
Action: Da_Blitz is setting up an arm machine right now17:08
Da_Blitzhow much ram does a buildbot need?17:08
plmfijal: I really would like that.. Bu I dont have money.. because this I still not have one for me :-) I will save money to buy a cheap pandaboard to run ubuntu.. I I was thiking about to run pypy on it..17:08
amauryHi, here is the status of the 2.7.2 branch:17:08
amaury- Different error messages in exceptions: test_str, test_unicode, test_socket17:08
amaury- on 32-bit, some mmap function should accept 64bit values: test_mmap17:08
amaury- disallow NUL bytes in filenames: test_site17:08
voidspace (~voidspace@python/psf/voidspace) left irc: Quit: Goodbye...17:09
Da_Blitzactually i guess a buildbot does a full build, not just tests17:09
amauryfirst one is really implementation details17:09
Alex_Gaynoramaury: should we put that in a NOTES.txt on the branch?17:09
amaurysecond should not be difficult to fix17:09
amauryI'm more worried about the third one17:09
amauryI suggest to *not* fix it ATM17:09
Arfrever (~Arfrever@apache/committer/Arfrever) joined #pypy.17:10
plmfijal: do you need a arm machine to have pypy for ARM or just x86 is fine to do a cross compile?17:12
bjawould a network-accessible qemu arm instance be okay?17:12
fijalbja: not for benchmarks17:13
plmfijal: what is status of pypy for ARM?17:14
fijalplm: QEMU had bugs last time we checked :/17:14
fijalplm: it's "almost done"17:14
plmfijal: wow.. that's great!17:14
fijalwell17:15
fijalit can still take months to be "done"17:15
fijalas in it's only volunteer work17:15
arigato (~arigo@adsl-89-217-193-22.adslplus.ch) joined #pypy.17:16
plmfijal: after done, version for arm will be develpment together x86 or always in second...?17:16
plmhumm17:16
fijalplm: it depends a bit, but I guess mostly together17:16
fijalplm: as in there is not that much code arm-specific17:16
fijalso say jit improvements would work on arm as well17:16
fijalamaury: I'm fine with saying "we don't do that" and skip the test?17:16
fijalamaury: the rest seems trivial17:17
plmfijal: wow.. pypy is so great project.. needs to have more money donate for contract full time programers :-)17:17
horieyui (horieyui@222.47.100.126) left irc: Quit: http://www.cnblogs.com/crazyhack17:18
fijal:]17:19
G2P (~G2P@fw-asn1.ornis.com) left irc: Quit: Leaving.17:21
vad (~vad@77.72.196.122) left irc: Read error: Operation timed out17:22
DasIch (~DasIch@p4FFDE139.dip.t-dialin.net) left irc: Quit: DasIch17:23
_habnabit (~habnabit@python/site-packages/habnabit) left irc: Quit: ZNC - http://znc.sourceforge.net17:25
tunixman (~tunixman@irc.theunixman.com) left irc: Ping timeout: 252 seconds17:25
_habnabit (~habnabit@2001:470:1f0e:bdd::2) joined #pypy.17:26
dmalcolm (david@nat/redhat/x-hlywiwcnxwroelts) left irc: Read error: Connection reset by peer17:26
dmalcolm_ (david@nat/redhat/x-lfkcyxtgbapykrxo) joined #pypy.17:26
tunixman (~tunixman@irc.theunixman.com) joined #pypy.17:26
asmeurer (~asmeurer@dhcp-altamirano-166.resnet.nmt.edu) joined #pypy.17:27
kenaan12antocuni py3k 11698aff2e6ca7 15/pypy/module/sys/__init__.py: hardcode the sys.std{in,out,err} encoding to ascii when running the tests. Two reasons: 1. if you don't specificy t...17:28
kenaan12antocuni py3k 110b17ddaa8c4f 15/pypy/interpreter/astcompiler/test/test_compiler.py: the repr of builtin types changed in python3, so we can no longer rely on the host python to know the exepected rep...17:28
kenaan12antocuni py3k 110f9987682c05 15/pypy/interpreter/astcompiler/: kill code to support tuple unpacking inside function arguments, which is no longer supported in python317:28
amauryantocuni: yeah for faster init17:30
antocuniamaury: yes, although it's still much slower than the old one17:30
antocuni~3 secs on my machine, vs ~117:30
amaurybin/py.py -S17:30
amauryis "site.py" also slower?17:31
antocuniamaury: the culprit is still using io.open to set std{in,out,err}17:31
antocuniif you comment out that appexec, it's much faster17:31
lucian (~lucian@93-97-174-114.zone5.bethere.co.uk) left irc: Ping timeout: 255 seconds17:31
fijalargh17:35
fijalisnan/isinf is a ufunc17:35
fijal>>> numpy.isnan(array([1, 2, 3, 4]))17:35
fijalarray([False, False, False, False], dtype=bool)17:35
fijal>>> 17:35
cocoatomo (~cocoatomo@p2118-ipbf901souka.saitama.ocn.ne.jp) left irc: Remote host closed the connection17:37
CIA-1703Dmitrey 07roundup * 10#1019/numpypy: zeros, ones and empty miss docstrings: (log message trimmed)17:38
CIA-17[new] All the funcs17:38
CIA-17>>>> help(np.zeros)17:38
CIA-17Help on built-in function zeros in module _numpypy:17:38
CIA-17zeros(...) * 14https://bugs.pypy.org/issue101917:38
DasIch (~DasIch@p4FFDE139.dip.t-dialin.net) joined #pypy.17:47
amauryNow that .pyc files are written in a __pycache__ directory,17:50
amaurydoes is make sense to remove the no-lone-pyc-files option?17:50
fijaldmitrey: why are you translating pypy each day btw?17:50
fijalamaury: I think your answer is 100% correct and horribly misleading17:51
amaurywhy misleading?17:51
fijalbecause the answer is "you should not build pypy that often:"17:51
fijalI think17:51
amauryah, *this* answer17:51
amauryyes, that's right17:51
dmitreyfijal: no, I have only 2 GB in 64bit system, so it takes too long and prevents me of doing any other work in my computer till it translates17:52
amaurydmitrey: you should try to *not* translate17:52
amauryby running an untranslated pypy17:52
fijaldmitrey: why are you translating at all?17:52
dmitreyso I do not translate now, I use py.py as alternative but it damned slow17:53
jimbaker (~jbaker@canonical/jimbaker) left irc: Quit: Coyote finally caught me17:54
fijaldmitrey: you use tests17:54
dmitreyI use them, but a bug have been revealed, now I'm searching for this one. I have been AFK for and hour17:56
_habnabit (~habnabit@2001:470:1f0e:bdd::2) left irc: Changing host17:57
_habnabit (~habnabit@python/site-packages/habnabit) joined #pypy.17:57
fijaldmitrey: still, you run tests17:57
fijalnot run py.py repeatadly and try to look for stuff17:57
fijalbesides, you're editing only the applevel part17:57
dmitreyyes I do but it's damned slow with py.py17:57
fijalyou *don't* run py.py17:58
dmitreyand it requires hacks with paths if I run ./pypy17:58
fijalbesides, there is no point in recmopiling17:58
fijalno, it does not17:58
fijalyou put pypy somewhere inside the checkout (as I explained to you before)17:58
fijaland it'll pick up the changes in library17:58
dmitreybut it assumes I have to put it every day17:58
fijalwhy do you think so?18:00
dmitreywell, which folder from sources downloaded by hg should I put link to compiled ./pypy?18:01
papercrane (~papercran@75.101.111.82) joined #pypy.18:01
arigatodmitrey: actually, any place works, as long as it's somewhere inside the sources18:02
arigatodmitrey: e.g. I use the directories 32compiled or 64compiled to put my pypy's18:02
arigatojust the pypy executables.  they will pick up stuff from the library within the sources, e.g. from lib-python and lib_pypy18:04
voidspace (~voidspace@python/psf/voidspace) joined #pypy.18:05
dmitreypy.test seems to use py.py, can I run it with pypy instead?18:10
ronnydmitrey: in what context18:10
amaury (~amaury_@74.125.57.34) left irc: Ping timeout: 240 seconds18:11
dmitreypy.test path_to_the_file_with_tests18:11
ronnydmitrey: that should use python18:11
rguillebertdmitrey, and how would you test untranslated interplevel code ?18:12
khs (~khs@151.43.202.84.customer.cdi.no) left irc: Quit: Leaving18:12
dmitreyI don't know about interplevel or other things like that, I mere asked is it possible to run it with compiled pypy executable18:13
dmitreyI dealt with rather high-level numpy/scipy funcs only18:13
jimbaker (~jbaker@c-75-71-80-146.hsd1.co.comcast.net) joined #pypy.18:15
jimbaker (~jbaker@c-75-71-80-146.hsd1.co.comcast.net) left irc: Changing host18:15
jimbaker (~jbaker@canonical/jimbaker) joined #pypy.18:15
rguillebertare tests really that slow ?18:15
jaffachief (~textual@host86-159-232-5.range86-159.btcentralplus.com) joined #pypy.18:15
ronnydmitrey: as far as i understand you have to invoke py.test with pypy to run the applevel tests on top of it18:15
rguillebertronny, and use -A ?18:16
ronnyi think so18:16
dmitreyyes18:16
ronnybbl18:16
rguillebertdmitrey, do you know that you can select only one test ?18:17
dmitreyeven 1 test runs slow18:18
dmitreyI have only 3 now, for ones_like, zeros_like, empty_like18:18
rguillebertcan you quantify slow ?18:19
dmitreywith py.py it takes about a minute18:19
rguillebertit's not that bad18:19
fijalminute is bad18:20
fijalwhen you edit code that's applevel18:20
fijaldmitrey: have you tried py.test -A?18:20
fijalpypy-c py.test -A18:20
dmitreynot yet. I'll go for it 18:20
fijaldmitrey: it should take ~5s btw18:21
dmitreyfijal: could you commit numpypy.nan?18:21
kenaan12fijal numpy-back-to-applevel 11200be74121ce 15/: implement isnan/isinf18:21
fijalyeah18:21
fijalnan or isnan?18:21
dmitreynan at least18:21
fijalI'm doing something else, in some time18:23
fijaldmitrey: for now just add nan = float('nan') in numeric.py18:23
dmitreyI think it should be a single line like nan=NaN=float('nan')18:23
fijalprobably not18:24
dmitreywhy?18:24
fijalah no18:24
fijalI though nan would be an instance of numpy.float_18:24
fijalbut apparently no18:24
fijal>>> numpy.array([1, 2, 3]).imag18:27
fijalarray([0, 0, 0])18:27
fijalwtf18:27
kenaan12fijal numpy-back-to-applevel 111af82ff8a172 15/lib_pypy/numpypy/core/arrayprint.py: disable things we don't support18:31
ojiiyou guys would know best, in python/pypy, are deque's with a maxlen more efficient than those without?18:35
jaffachief (~textual@host86-159-232-5.range86-159.btcentralplus.com) left irc: Quit: Computer has gone to sleep.18:36
pnguyen (~pnguyen@cpe-70-112-214-119.austin.res.rr.com) joined #pypy.18:36
MostAwesomeDudeojii: Not AFAIK, since they are linked lists.18:36
ojiiMostAwesomeDude, nice nickname and thanks18:37
MostAwesomeDudeojii: Yeah, I'm a big Bill & Ted fan.18:37
Action: ojii doesn't even know who/what that is18:37
MostAwesomeDudeOh. :c18:37
MostAwesomeDudeIt was a movie, a long time ago.18:37
dmitreyfijal: I have no pypy-c file, where it should be?18:40
fijaldmitrey: pypy 18:41
apoirier (~apr@210.168.3.109.rev.sfr.net) left irc: Quit: Leaving...18:42
kenaan12fijal default 1124f7e3520fb4 15/pypy/module/micronumpy/: a dumb implementation of isna18:42
kenaan12fijal default 1145af9fa4aed0 15/pypy/module/: merge18:42
dmitreyshould I have pypy build from souces for this?18:42
bbot23Success: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-32/builds/1029 [12fijal]18:43
dmitreyI searched both nightly build and uncompiled sources for pypy-c file, it's absent there18:44
fijaldmitrey: pypy18:44
fijaldmitrey: executable name18:44
fijal(instead of pypy-c)18:44
kenaan12fijal numpy-back-to-applevel 11c77051b2f51a 15/: merge18:44
kenaan12fijal numpy-back-to-applevel 11f11a97418c3f 15/lib_pypy/numpypy/core/: hooray applevel print works18:44
bbot2Started: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-32/builds/1030 [12fijal]18:45
fijalAlex_Gaynor: ping18:46
forrestv (~forrestv@unaffiliated/forrestv) joined #pypy.18:47
voidspace (~voidspace@python/psf/voidspace) left irc: Quit: Goodbye...18:54
kenaan12fijal numpy-back-to-applevel 11838a81530121 15/: move test and make it pass on CPython. besides, trick numpy into believing it's numpypy when running...18:57
amaury (~amaury_@46-127-23-192.dynamic.hispeed.ch) joined #pypy.18:57
fijal:/18:59
fijalwhy | works on bools in python?18:59
MostAwesomeDudefijal: Probably because they inherit from int.19:03
MostAwesomeDude>>> 4 | True19:03
MostAwesomeDude519:03
ivan` (~ivan@unaffiliated/ivan/x-000001) left irc: Ping timeout: 252 seconds19:12
dmitreyfijal: is there somewhere instructions how to clone on bitbucket and issue a pull request? My tests for empty_like etc seems to pass well now19:12
tumbleweeddmitrey: bitbucket has docs19:14
andrewfr (~andrew@modemcable211.101-70-69.static.videotron.ca) joined #pypy.19:14
pnguyen (~pnguyen@cpe-70-112-214-119.austin.res.rr.com) left irc: Quit: pnguyen19:14
andrewfri want ask a question about an "ambiguous low-level helper specialization" errror19:14
fijal (~fijal@196-210-150-33.dynamic.isadsl.co.za) left irc: Ping timeout: 240 seconds19:15
andrewfr (andrew@modemcable211.101-70-69.static.videotron.ca) left #pypy.19:17
dmitreycan I just write "hg push myfile"?19:18
tumbleweeddmitrey: one pushes and pulls commits19:18
tumbleweedgenerally, all of them19:18
dmitreyso I should use "hg commit myfile"?19:19
tumbleweedyes19:20
dmitreyshould I have an account for this?19:20
tumbleweedseriously, the docs: http://mercurial.selenic.com/guide/ http://confluence.atlassian.com/display/BITBUCKET/bitbucket+101 and  19:22
nickik (~nick@217.150.234.222) joined #pypy.19:26
fijal (~fijal@196-210-150-33.dynamic.isadsl.co.za) joined #pypy.19:29
dmitreytumbleweed: thanks19:30
dmitreyI'm familiar with svn but not hg19:30
tumbleweedI'm sur ethere's an hg for svn users guide somewhere19:32
pnguyen (~pnguyen@cpe-70-112-214-119.austin.res.rr.com) joined #pypy.19:37
plm (~plm@65.111.170.40) left irc: Quit: leaving19:41
kenaan12stefanor default 11522114ac6c4a 15/pypy/module/_socket/test/test_sock_app.py: Avoid a AF_UNIX path that's too long  AppTestSocket.test_unix_socket_connect tries to connect to a socket within...19:43
tilgovi (~randall@couchdb/developer/tilgovi) joined #pypy.19:44
tilgovi (~randall@couchdb/developer/tilgovi) left irc: Read error: Connection reset by peer19:44
kenaan12fijal numpy-back-to-applevel 116a5df7612571 15/: inversion and don't swallow exceptions too much19:46
__main__ (~main@adsl-99-173-15-158.dsl.pltn13.sbcglobal.net) left irc: Read error: Connection reset by peer19:46
gehho2_ (~gehho2@ZJ040192.ppp.dion.ne.jp) joined #pypy.19:49
gehho2 (~gehho2@ZJ040192.ppp.dion.ne.jp) left irc: Ping timeout: 245 seconds19:50
Guest_ (~textual@67.51.82.66) joined #pypy.19:53
Nick change: Guest_ -> rekamso19:53
__main__ (~main@adsl-99-173-15-158.dsl.pltn13.sbcglobal.net) joined #pypy.19:55
fprimex (~fprimex@brent-macbook.sc.fsu.edu) joined #pypy.19:57
CIA-1703stefanor 07roundup * 10#987/AppTestSocket.test_unix_socket_connect can fail when TMPDIR is long: [resolved] Fixed in r522114ac6c4a * 14https://bugs.pypy.org/issue98719:57
dmitreyfijal: which branch should I commit empty_like etc?19:58
lizardo (lizardo@nat/indt/x-tqdxwqhlsxscasit) left irc: Quit: Leaving19:58
fijalyou should not commit it20:01
fijalyou should diff against the default20:01
dmalcolm_ (david@nat/redhat/x-lfkcyxtgbapykrxo) left irc: Read error: Connection reset by peer20:05
dmalcolm_ (david@nat/redhat/x-yuvxhvolunasrtsm) joined #pypy.20:05
pnguyen (~pnguyen@cpe-70-112-214-119.austin.res.rr.com) left irc: Quit: pnguyen20:07
leshastedmarkey: hg is like svn but better :)  http://mercurial.selenic.com/wiki/QuickStart is fairly good20:08
leshastedmitrey: ^^20:08
leshasteif you don't want to read the full manual20:08
dmitreyfijal: you wrote "or you can have a clone on bitbucket and issue a pull request". Well, it doesn't essentially for me now.  Changes for 3 files are here: http://pastebin.com/Q9qWPMBy: . I have checked them with compiled pypy, but I'm not sure it works with interpreter20:08
fijalClass = a.__class__ if hasattr(a,'__class__') else object20:11
fijalClass = type(a) does the same thing except better20:11
amaury(not for old-style classes)20:12
exarkunfijal: but it doesn't use novel syntax for no reason20:12
dmitreywell, can you change it by yourself20:12
dmitrey?20:12
exarkunhow about: Class = getattr(a, '__class__', object)20:12
arkx (~aku@eagleflow.fi) left irc: Quit: Lost terminal20:12
lizardo (lizardo@nat/indt/x-zmqmglgfrwmlvqpl) joined #pypy.20:12
amauryand: "dtype or a.dtype"20:13
amauryinstead of "a.dtype if dtype is None else dtype"20:14
fijaldmitrey: ok, I'll have a look20:15
dmitreyso which code do you propose instead of  "a.dtype if dtype is None else dtype"?20:15
amaury"dtype or a.dtype"20:16
dmitreyit's quite unclear, I dislike bool expressions on non-bool data20:16
amaury'or' is not a bool operator20:17
dmitreyin all modern languages only bool data goes to if statement20:17
amauryyes, 'if' has to coerce the expression to bool20:17
dmitreyit' better to do it explicitely20:18
fijaleh20:18
fijalcan you please take this discussion somewhere else?20:18
dmitreyok20:18
dmitrey (~quassel@77.121.195.200) left irc: Remote host closed the connection20:20
arkx (~aku@eagleflow.fi) joined #pypy.20:22
ericflo (~ericflo@75.103.8.110) joined #pypy.20:23
Tobu (~Tobu@unaffiliated/tobu) left irc: Ping timeout: 252 seconds20:38
Tobu (~Tobu@unaffiliated/tobu) joined #pypy.20:49
Alex_Gaynorfijal: pong20:52
leshaste (~lesshaste@87-194-206-189.bethere.co.uk) left irc: Quit: Leaving20:52
lucian (~lucian@94.197.127.200.threembb.co.uk) joined #pypy.20:54
lucian (~lucian@94.197.127.200.threembb.co.uk) left irc: Client Quit20:56
lucian (~lucian@94.197.127.200.threembb.co.uk) joined #pypy.20:56
lucian (~lucian@94.197.127.200.threembb.co.uk) left irc: Client Quit20:56
fijalAlex_Gaynor: we need masked arrays :/20:58
fijalAlex_Gaynor: also, will you handle docstrings?20:58
fijalor not really?20:58
Alex_Gaynor:/ I hadn't planned on doing anything with docstrings, no20:58
lizardo (lizardo@nat/indt/x-zmqmglgfrwmlvqpl) left irc: Quit: Leaving20:58
Rhy0lite (dje@nat/ibm/x-fhkqwjhpkgsgxmao) left irc: Quit: Leaving20:59
lucian (~yaaic@94.197.127.200.threembb.co.uk) joined #pypy.20:59
Alex_Gaynorfijal: I suppose masked arrays are a clever subclass of BaseArray somehow20:59
fijalwell21:00
fijalas far as I can see, numpy has "if masked array" *everywhere*21:00
lucian (~yaaic@94.197.127.200.threembb.co.uk) left irc: Client Quit21:00
Alex_Gaynorthat's because numpy was created before the invention of polymorphism21:00
fijalhttp://paste.pocoo.org/show/540195/21:01
fijalmy favorite so far21:01
fijalAlex_Gaynor: did you know ~ is needed for string?21:01
fijalor array.compress?21:01
Alex_Gaynorfijal: I won't ask why21:01
fijalI didn't21:01
fijalor isnan as ufunc?21:01
Alex_Gaynorisnan as a ufunc makes sense21:01
Alex_GaynorWTF is this code you linked21:01
dmitrey (~quassel@77.121.195.200) joined #pypy.21:01
fijalAlex_Gaynor: a copy-paste code I believe21:02
dmitrey (~quassel@77.121.195.200) left irc: Remote host closed the connection21:02
Alex_GaynorI'm skeptical of the claim that numpy is fast21:02
fijalAlex_Gaynor: numpy.take or something21:02
fijal:]21:02
fijalyes, me as well21:02
Alex_Gaynoruhh, take looks like it's the same as __getitem__21:03
fijalexcept slightly different21:03
fijaland copy-pasted21:03
exnihilois there a way to enable stackless features for the untranslated py.py?21:04
fijalexnihilo: py.py --withmod-_continuation or so?21:04
exnihilogreat, thanks21:05
fijalexnihilo: does it work?21:12
exnihilowell, yes and no :) I hit the windows issue21:12
exnihilobut on my (unfortunately much slower) linux box it does fine21:12
exnihiloheh, actually, scratch that.  The module loaded fine but instantiating a continulet did not21:14
fijal--allworkingmodules should provide you with whatever you need21:14
bbot24Failure: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-32/builds/1030 [12fijal]21:15
danchr (~danchr@cl-848.chi-02.us.sixxs.net) left irc: Ping timeout: 248 seconds21:16
kenaan12arigo default 1180d054b4615d 15/pypy/module/thread/: Test and fix for "Ambiguous low-level helper specialization" when the same RPython program contains several calls t...21:16
kenaan12arigo default 1129a811af16dc 15/pypy/module/thread/test/test_ll_thread.py: Deadlocks occasionally -- why???21:16
kenaan12arigo stm 11776034ae21ee 15/: hg merge default21:16
fijalAlex_Gaynor: ok, I'll deal with docstrings21:17
fijalhttp://buildbot.pypy.org/builders/jit-benchmark-linux-x86-32/builds/1030/steps/shell_11/logs/stdio21:17
fijalAlex_Gaynor: you broke stuff?21:17
Alex_Gaynorfijal: was the buildbot software updated21:18
exnihilohrm.  --allworkingmodules is a switch to py.py?  Not working :|21:18
bbot2 (~bbot2@wyvern.cs.uni-duesseldorf.de) left irc: Quit: buildmaster reconfigured: bot disconnecting21:18
bbot2 (~bbot2@wyvern.cs.uni-duesseldorf.de) joined #pypy.21:18
fijalexnihilo: a switch of resulting py.py?21:19
fijal./pypy/bin/py.py --allworkingmodules21:19
fijaltotally worsk for me21:19
fijalI mean takes time21:19
fijalbut works21:19
exnihilohrm, I did both switches, and it didn't work. let me see 21:19
exnihiloI tried to translate last night on this system but it didn't make it all the way through21:20
exnihilowould that cause the issue?21:20
Nick change: gehho2_ -> gehho221:20
danchr (~danchr@cl-848.chi-02.us.sixxs.net) joined #pypy.21:22
mattip (~mattip@bzq-79-177-109-132.red.bezeqint.net) joined #pypy.21:23
stakkars_ (~tismer@p5DCE1E0C.dip.t-dialin.net) joined #pypy.21:23
Alex_Gaynorfijal, arigato: Do you guys know any good resources on CPython bytecode?21:24
rekamso (~textual@67.51.82.66) left irc: Ping timeout: 240 seconds21:25
ojiiare deque's slower on pypy than cPython?21:26
hruske (~Gasper@188-230-156-183.dynamic.t-2.net) left irc: Ping timeout: 260 seconds21:26
ojiii have some code that looks like that, can't fully isolate it yet though so not sure, thought I'd ask if that's a known thing21:26
ojiior actually, is array.array slower on pypy than cpython? (that would make a lot more sense)21:27
jokeymh a simple FSM working through like 200mbyte data.. something happened here? http://paste.pocoo.org/show/539422/21:30
ronnyjokey: can you show the code of the fsm?21:31
jokeyronny: will do, though ways to debug such stuff I'd be interested in ;)21:32
arigato (~arigo@adsl-89-217-193-22.adslplus.ch) left irc: Quit: See you21:33
fijalAlex_Gaynor: "resources"?21:33
fijalojii: array.array should be super duper fast21:34
fijalojii: deque as well21:34
ojiifijal, i'm trying to figure out why it's slow as hell21:34
fijalojii: did you do profiling?21:34
fijalor can I try?21:34
ojiiyes21:34
ojiii have profile data here21:34
fijalexnihilo: no idea21:34
fijalojii: are you measuring time under profiler?21:34
fijalif so, stop21:34
ojiinono21:34
jokeyronny: normally I'd do simple profiling but does n21:35
fijalojii: ok21:35
ojiii did `time python bench.py` and `time pypy bench.py`21:35
jokeyronny: that help in this case?21:35
tilgovi (~randall@couchdb/developer/tilgovi) joined #pypy.21:35
fijalojii: yeah cool, I want bench.py :)21:35
nedbat (~nedbat@python/psf/nedbat) left irc: Read error: Connection reset by peer21:35
ojiiit's 0.3s in cpython and 2.19s in pypy21:35
ojiiwhich is sad21:36
nedbat (~nedbat@python/psf/nedbat) joined #pypy.21:36
ojiifijal, i'd rather not opensource this right yet (because it's really a lot of crappy code) but if you can give me your gh username i can give you the code21:36
ojiiif you want to figure out why it's slower21:36
fijalojii: well, I have a policy to not do it21:37
fijalojii: why don't you want to open source it?21:37
ojiifijal, lemme do a trick and put this on bitbucket so noone notices :D21:38
fijalyes, good :)21:38
ronnyjokey: jitviewer might help21:38
fijalojii: you can hire me for $ to look at non open-source code21:38
ojiinono it will eventually be open source21:38
ojiiit's just not "ready for the public" yet21:39
fijalstill :)21:39
fijaldon't worry if you put it in an obscure corner noone will notice ;-21:39
fijal)21:39
ojiii completely understand you21:39
ojiifijal, https://bitbucket.org/ojii/notpil21:39
ojiiclone that, run bench.py21:39
ojiino dependencies or shinannigans like that21:40
ojii(well other than python :D)21:40
fijalcool now I can help you :)21:40
ojiiyay21:41
jokeyronny: mh my vnc fails now, will upload tomorrow when I'm at my desk again... Just that the speedup is impressive. On cpy it takes ~13 minutes and on pypy it's 38 seconds21:41
fijaljokey: nice21:42
jokeyronny: so for something that good I'd really like to give back at least good bug reports :D21:42
ronny:)21:42
fijaluh :/21:45
ojiifijal, in that code, most time is spent in notpil.operations.geometry._fliprow which is called A LOT of times21:47
ojiii can give you my profile data if you don't want to run it forever21:47
fijalplease21:49
fijalI'm seeing geometry._fliprow, but paste it somewhere21:50
ojiifijal, http://ubuntuone.com/5P6K9piF6LWamRU96rr1tM is the profile data21:50
fijalojii: note on pypy append = list.append hacks are pointless21:51
ojiifijal, it's supposed to run on pythons (ideally 2.x and 3.x) and pypy'21:52
ojiion cpy it made a huge difference 21:52
fijalojii: can you provide a summary in pastebin or so21:52
ojiisummary of what?21:53
ojiisorry i'm not really experienced in profiling/analyzing profile data21:54
ojiiI was just really surprised that pypy is slower and even that much slower than cpy for this code, so I thought I'd hop on here21:54
ojiiand it's ~0.32s vs ~2.35s21:55
fijalpixels = (array.array('B', chain(*[palette[pixel] for pixel in line])) for line in pixels)21:56
fijalthis is taking all the time21:56
ojiiah21:56
fijalitertools.chain and stuff like this21:56
fijalthose are cpython optimization tricks that don't quite work :/21:56
ojiii see21:56
fijalthere is no good reason why it's so much slower than cpython21:57
fijalwhat does itertools.chain do anyway?21:57
fijalarray.array(list) can be made much faster21:58
fijaleasily even21:58
ojiiitertools.chain turns in this case a list of tuples into a flat list21:58
ojiiso [(1,2,3), (1,2,3)] into [1,2,3,1,2,3]21:58
ojii`palette` is a list of tuples. pixels is a list of lists of integers which are indexes into palette21:59
ojiiwhat i want is  a list of arrays with the tuples expanded using palette22:00
andrewfr (~andrew@modemcable211.101-70-69.static.videotron.ca) joined #pypy.22:01
ojiii guess i might optimize that by doing the expansion when the actual pixel is read22:01
andrewfr (andrew@modemcable211.101-70-69.static.videotron.ca) left #pypy.22:01
ojiibut haven't looked into really optimizing the stuff i copied in yet22:01
fijalok22:03
ojiiactually haven't looked into optimization at all yet since i just wanted to get it to work somehow (as you can see from the code), but was still shocked by the pypy performance22:03
fijalwell, this is where all the time is going22:03
ojiialright, thanks for digging in a bit. at least i know what to look into now22:04
fijalI can probably explain a bit22:04
fijalpypy is trying quite a bit but still failing, however on cpython you'll get a huge hit from that22:04
fijalif you pack from array to deque to array to chain etc.22:04
fijalyou're constantly packing and unpacking integers - this is costly22:05
ojiithat makes sense22:05
fijalif you instead say preallocate a 2-d numpy array stuff will fly22:05
ojiiit's an unfortunate side-effect of just patching stuff together22:05
fprimex (~fprimex@brent-macbook.sc.fsu.edu) left irc: Quit: http://www.fprimex.com22:05
fijalgenerally speaking pypy is not very good at figuring out "a ha this is just a list of transformations I can be lazy"22:05
fijalit's a bit hard in python22:05
fijalbut maybe we should try a bit harder22:05
fijalojii: it's something silly like noone looked at itertools.chain performance or so22:06
fijalojii: I think it's worth a bug report22:06
exarkunI remember discussion of *args causing difficulties.22:07
fijalthat might as well be22:07
fijalojii: pypy is not super happy with *args being huge22:07
ojii"*args being huge" as in it being used a lot or 'args' being hgue?22:07
ojii*huge22:07
WhyWhyWhyojii: "so [(1,2,3), (1,2,3)] into [1,2,3,1,2,3]" : http://paste.pocoo.org/show/540223/ ?22:08
Nick change: WhyWhyWhy -> Fluxid22:08
exarkunhow big is line?  a few hundred elements?  a thousand?22:08
exarkunpassing a thousand arguments to a function isn't a common case22:08
ojiiexarkun, it's 2-422:09
ojiiFluxid, i'm somehow failing to convert my code to that nested iterator style22:10
ojiiFluxid, i do this currently: chain(*[palette[pixel] for pixel in line])22:11
DasIch_ (~DasIch@p4FFDE139.dip.t-dialin.net) joined #pypy.22:11
ojiipalette[pixel] returns a tuple22:11
bja (~bja@69.11.216.98) left irc: Remote host closed the connection22:12
kenaan12mattip numppy-flatitter 11f8f03c1f35e0 15/pypy/module/micronumpy/interp_numarray.py: attempt at faster getitem, breaks setitem22:12
tilgovi (~randall@couchdb/developer/tilgovi) left irc: Remote host closed the connection22:12
DasIch (~DasIch@p4FFDE139.dip.t-dialin.net) left irc: Ping timeout: 260 seconds22:13
Nick change: DasIch_ -> DasIch22:13
fijalojii: it's not 2-422:14
fijalojii: line is like a 100?22:14
ojiiyes but the thing that gets *'ed is 2-4 items22:14
ojiiin the test i do it's 322:14
ojiioh wait22:14
ojiiyes of course you're right22:14
Fluxidojii: you mean, it doesn't work as expected? http://paste.pocoo.org/show/540227/22:14
ojiiit's about 48022:15
ojiiFluxid, that works22:15
ojiii just failed22:16
Fluxidi'm sorry, i hopped in the middle of the discussion maybe i miss the point22:16
ojiithat gets rid of 0.2s22:16
ojiistill 2.15s vs 0.3s22:16
Fluxidduh22:16
ojiiand cpy didn't suffer a lot from that22:17
exarkunPyPy and CPython are different. :)22:17
ojiii know22:17
ojiistill i've heard all those great stories about how pypy makes things "magically" fast, this has yet to happen for me :(22:18
hruske (~Gasper@188-230-156-183.dynamic.t-2.net) joined #pypy.22:18
squiddy (~squiddy@g224198052.adsl.alicedsl.de) left irc: Quit: Leaving22:18
fijalojii: well, you're using all the tricks in the book to make cpython happier22:19
fijalseriously22:19
ojiifijal, i guess that's what happens if you do cpython for a few years22:19
ojiiyou learn all those hacks22:19
exarkunThe suggestion to dump all the data into an array and stop treating it one piece at a time seems like the best one so far22:19
fijalyes22:19
exarkunIt'll probably be faster on CPython, too.22:19
ojiiexarkun, what exactly do you mean by that?22:20
hruske (~Gasper@188-230-156-183.dynamic.t-2.net) left irc: Client Quit22:20
fijalojii: I mean read the entire file into an array22:20
ojiiah22:20
fijaland don't try to have a list of this and a list of that and a list of something else22:20
fijalthat you cast from one to another22:20
ojiithat makes sense22:20
exarkunYes.  And then, for example, don't have a function _fliprow at all.  Whatever you wanted to flip for, just change how you iterate to achieve the result.22:20
ojiihow bad is list-of-arrays?22:20
exarkunIt's worse than just one array.22:21
ojiiit just makes things in python a lot nicer22:21
ojiibut that's something I could sacrifice if needed22:21
exarkunYou can still have a nice layer on top of the array.22:21
exarkunThat's where PyPy starts to do better than CPython22:21
exarkunYou can add a layer with a nice API and not pay so much of a cost22:21
exarkunwhereas on CPython you pay for every extra function call you add22:22
mattipfijal: when you get a chance, please look at my last commit ^^^^22:22
ojiii'll look into that tomorrow, thanks everyone for your insight into this22:22
antocuni (~antocuni@host155-125-dynamic.25-79-r.retail.telecomitalia.it) left irc: Ping timeout: 252 seconds22:22
fijalojii: I fear this functional style will never be as fast as you want it in python22:23
fijalif you write ugly C it'll be faster22:23
fijalmuch faster22:23
fijalprobably functional languages can do something with it, but not python22:23
fijalojii: I expect why it's slower than cpython is something silly22:24
fijallike chain not being jitted or something like that22:25
CIA-1703papercrane 07roundup * 10#1016/RPython AssertionError while running async io greenlet test: Reconfirmed with hg changeset 51742:522114ac6c4a on OSX. * 14https://bugs.pypy.org/issue101622:25
fijalyeah I think so22:25
mikefc_fijal, mattip: my first attempt at a ufunc.  isnan. http://paste.pocoo.org/show/540236/      passable?22:26
fijalojii: it's array.array(<whatever iterator>?)22:26
fijalnot doing the right thing22:26
fijalojii: this probably can be improved22:26
fijalmikefc_: oh, I implemented isnan today22:27
mikefc_OK. I'll have a look at yours. 22:27
fijalyour isnan is buggy the resulting dtype is float ;-)22:27
mikefc_is yours on the 'backtoapplevel' branch?22:28
mikefc_my definnition needs a 'promote_to_bool'?22:28
fijalexarkun: is there a way to preallocate array to size X?22:28
fijalno :/22:29
fijalwho the fuck designed this interface?22:29
fijalpython has like 7 buffer-like things, none of them actually usable22:29
fijalmikefc_: yeah, it's a bit complicated22:30
fijalmikefc_: because you don't promote an argument, you promote the result22:30
fijalojii: and we don't have a __length_hint__22:32
Nick change: elliottcable -> efc`22:33
mattipfijal: would a paste of the relevant code be more convenient than the changeset? http://paste.pocoo.org/show/54023922:33
mattipI tried to do something faster than O(N), as Alex_Gaynor requested.22:34
mattipbut is it truely faster?22:34
Tobu (~Tobu@unaffiliated/tobu) left irc: Read error: Operation timed out22:35
dmarkeyssssss22:36
fijalmattip: you know there is no easy way to introduce a jit merge point there?22:37
papercraneis there a way to use greenlets with py.py? (Not pypy-c) When I try it tells me I need to translate with --continuation. I tried --withmod-_continuation but that makes no difference.22:38
fijalmattip: can we have next_by_x(skip)22:38
fijal?22:38
mattipI didn't have a better idea.22:38
fijalmattip: I mean we have a concrete iterator there, how hard it is to implement next_x_steps()22:38
fijal?22:38
fijalmattip: note I think it's fine for now22:39
mattipto precalculate the skip?22:39
fijalsince skip is not *that* important22:39
fijalyou don't have to precalculate22:39
fijalyou just put a different method on an iterator22:39
fijalmattip: but I think it's fine for now22:39
Nick change: efc` -> elli22:39
setmeaway (~setmeaway@118.45.149.247) left irc: Quit: Leaving22:39
mattipok, I will clean it up and commit.22:40
fijalmattip: maybe put a while inside a function (due to jit limitations)22:40
mattipok22:40
fijalpapercrane: yes, run with --allworkingmodules22:40
fijalmattip: the inside while22:41
fijalwe can think about optimizing later22:41
mattipok22:41
fijalmattip: ideally also have a fast path if underlaying array is continuous22:41
fijalbut not necessary, leave a comment probably22:41
Alex_Gaynor (u1246@gateway/web/irccloud.com/x-nyxhkathukzeilzk) left irc: Write error: Broken pipe22:41
oal (u4126@gateway/web/irccloud.com/x-qcpgnudvfefbglmo) left irc: Read error: Connection reset by peer22:41
setmeaway (~setmeaway@118.45.149.58) joined #pypy.22:41
tilgovi (~randall@couchdb/developer/tilgovi) joined #pypy.22:42
papercranefijal: Doesn't work, I get the same error: AssertionError: stacklet: you have to translate with --continuation22:44
vpelletier (~vincent@ALille-154-1-51-144.w86-198.abo.wanadoo.fr) joined #pypy.22:44
vpelletierfijal: what about ctype's buffers ? :)22:44
mattipohh, for crying out loud. I completely ignored the "step". More tests needed. :(22:44
amaury (~amaury_@46-127-23-192.dynamic.hispeed.ch) left irc: Ping timeout: 240 seconds22:45
vpelletierfijal: (cf. twitter)22:45
jaffachief (~textual@host86-159-232-5.range86-159.btcentralplus.com) joined #pypy.22:46
ivan` (~ivan@unaffiliated/ivan/x-000001) joined #pypy.22:47
Alex_Gaynor (u1246@gateway/web/irccloud.com/x-wkfqjkmeedjbmbmx) joined #pypy.22:47
#pypy: mode change '+o Alex_Gaynor' by ChanServ!ChanServ@services.22:47
Tobu (~Tobu@unaffiliated/tobu) joined #pypy.22:47
bfirsh (u1308@gateway/web/irccloud.com/x-xljxtxjkpnmxshfr) joined #pypy.22:48
stakkars_ (~tismer@p5DCE1E0C.dip.t-dialin.net) left irc: Quit: schnarch22:51
intchanter (~intchante@c-76-27-100-38.hsd1.ut.comcast.net) left irc: Ping timeout: 245 seconds22:52
vpelletier (~vincent@ALille-154-1-51-144.w86-198.abo.wanadoo.fr) left irc: Quit: Zzz22:54
intchanter (~intchante@c-76-27-100-38.hsd1.ut.comcast.net) joined #pypy.22:55
Nick change: elli -> ecececececececec22:55
Nick change: ecececececececec -> elliottcable22:56
fijalpapercrane: look in tests?22:58
fijalmattip: besides, don't be worried about using memcopy22:58
fijalit's fine without it22:58
JaRoel|4d (~jaroel|4d@2001:980:7133:1:20ce:4230:123c:46b2) joined #pypy.22:59
mattip?22:59
mattipThat's the way it was before and I was asked to make it faster than O(N) ?22:59
Alex_Gaynorfijal: pong?22:59
bbot2Started: 15http://buildbot.pypy.org/builders/own-macosx-x86-32/builds/78623:00
bbot2Started: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64/builds/21523:00
bbot2Started: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-32/builds/103123:00
bbot2Started: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64-2/builds/4223:00
JaRoel (~jaroel|4d@2001:980:7133:1:d865:c606:2463:4919) joined #pypy.23:00
JaRoel|4d (~jaroel|4d@2001:980:7133:1:20ce:4230:123c:46b2) left irc: Ping timeout: 252 seconds23:03
fijalAlex_Gaynor: did I want something?23:04
fijalmattip: no, it was doing something with dimensions each iteration23:04
fijalmattip: how is copying elements ever not O(n)?23:04
Alex_Gaynorfijal: who knows :]23:04
mattipwell, supposedly agregating the next() calls between copies should be faster, no?23:06
fijalmattip: no, write the simplest possible thing that works23:06
fijalseriously23:06
fijalbut works with step and stuff23:06
fijalmattip: a loop is fine, but decomposing indexes at each iteration is not23:07
fijalAlex_Gaynor: btw, py.test -A now works23:07
fijalfor numpy23:07
mattipok23:08
Alex_Gaynorfijal: I saw, cool23:08
fijalAlex_Gaynor: for what is worth23:10
fijalnumpy.int64 is type int6423:10
Alex_Gaynorfijal: ?23:10
fijalbut it's not the same thing as numpy.array([0], dtype=long)[0].__class__23:10
Alex_Gaynorit's not numpy.dtype("l") or so23:11
oal (u4126@gateway/web/irccloud.com/x-akxqsxxqxqewcimp) joined #pypy.23:12
fijalI don't know'23:12
fijalassert isinstance(numpy.array([0], long)[0], numpy.int64)23:12
fijalfails23:12
Alex_Gaynordoes it pass on numpy?23:13
Alex_Gaynorthat is, where does it pass where does it fail23:13
fijalit passes on numpypy fails on numpy23:13
fijal>>> numpy.array([[1], 2])23:13
fijalarray([[1], 2], dtype=object)23:13
fijal>>> 23:13
fijalO_o23:14
Alex_GaynorNumPy: random bullshit you never expected.  But it's fast (not really).  But it does math (apparently)23:14
fijalit's kinda cool23:14
fijalthe API is cool + tons of crap23:14
fijaloh23:15
fijalthey fixed slice assignment to self23:15
Alex_Gaynor(congratulations to them?)23:15
fijalwe have 19 failures so fart23:16
Alex_Gaynoras in tests we pass that numpy fails, or the reverse?23:16
fijaloh crap23:17
fijalyeah23:17
fijalbut some are our bugs23:17
Alex_Gaynorwait which?23:17
fijalso I have to find a US number flight :/23:18
papercranefijal: Not quite sure what you mean. I'm trying to run the test_greenlet.py via pypy pytest.py and it segfaults :-/ PYTHONPATH=. pypy pytest.py pypy/module/test_lib_pypy/test_greenlet.py23:18
fijalpapercrane: nice that's a bug report possibly23:18
fijalpapercrane: but you should be able to run those tests without pypy23:18
fijalpapercrane: like py.test pypy/module/test_lib_pypy/test_greenlet.py23:18
fijalI don'23:18
fijalt know how exactly it works and I'm about to go to bed23:18
fijalpapercrane: file a bug about that?23:19
papercranefijal: Running with python it passes fine :-/23:19
papercraneok23:19
papercranefijal: sleep well :-)23:19
whitelynx (~whitelynx@63.241.75.144) left irc: Quit: Ex-Chat23:19
fijalpapercrane: I mean those tests generally run on py.py23:19
fijalexcept they're instantiated somehow differently23:19
papercranefijal: Would py.test run py.py? I'd think it would run the python it's installed with& Then again there may be testing magic that I don't know about I suppose23:20
fijalno no23:21
fijalpapercrane: if you look at the test, the py.test is run with normal python23:21
fijalhowever stuff inside class AppTestXxx23:21
fijalis run using py.py23:21
fijalotherwise the testing will be a bit pointless23:21
papercraneah yes, that makes sense23:22
fijalit passes options to gettestobjspace23:22
fijalwhich is --continuation --withmod-_continuation23:22
fijalIMO23:22
papercraneok, well, I'll file a bug about the segfault23:22
fijalpapercrane: can I have an example where it fails?23:22
fijalpapercrane: so the segfault is py.py on top of pypy23:23
fijalwhich is bad, but it might be something unrelated like ctypes23:23
papercraneappears to be, yeah23:23
papercranethe command I gave above segfaults for me&of course I'm on OSX, not Linux, but still&I'll try it on Linux and see what happens23:23
fijalif you give me an example I can have a quick look (what you're running with py.py)23:24
fijalI won't look at the segfault now, please file a bug23:24
papercraneok23:24
papercraneI'm attempting to run it like so: PYTHONPATH=. python2.7 ~/src/pypy/pypy/bin/py.py --allworkingmodules -v examples/both.py23:24
fijalwhere examples come from...?23:25
papercranegit@github.com:reversefold/jevent.git23:25
gtaylor (~gtaylor@108-196-160-156.lightspeed.tukrga.sbcglobal.net) left irc: Quit: Konversation terminated!23:26
voidspace (~voidspace@87-194-212-65.bethere.co.uk) joined #pypy.23:26
voidspace (~voidspace@87-194-212-65.bethere.co.uk) left irc: Changing host23:26
voidspace (~voidspace@python/psf/voidspace) joined #pypy.23:26
papercraneI also attached a tarball of one version to another bug (https://bugs.pypy.org/issue1016)23:26
papercraneI was trying to run it via py.py to see if I could get anything more useful out of it23:26
fijalso how does it fail?23:27
papercranewith py.py I get: AssertionError: stacklet: you have to translate with --continuation23:27
papercrane--continuation doesn't appear to be an option you can pass to py.py23:27
papercranelong stacktrace above it, of course23:28
fijalya23:28
fijalpapercrane: try now?23:31
kenaan12fijal numpy-back-to-applevel 1115cfdca400bb 15/pypy/module/micronumpy/test/: enable even more tests on -A23:31
kenaan12fijal default 11e3fbdc682ed9 15/pypy/bin/py.py: seems to be necessary for running continuation stuff23:31
csenger (~user@dslb-084-058-161-075.pools.arcor-ip.net) left irc: Ping timeout: 240 seconds23:31
fijalsuper slow of course23:31
fijal (~fijal@196-210-150-33.dynamic.isadsl.co.za) left irc: Remote host closed the connection23:32
csenger (~user@dslb-084-058-161-075.pools.arcor-ip.net) joined #pypy.23:35
nedbat (~nedbat@python/psf/nedbat) left irc: Disconnected by services23:39
nedbat_ (~nedbat@python/psf/nedbat) joined #pypy.23:40
csenger (~user@dslb-084-058-161-075.pools.arcor-ip.net) left irc: Read error: Connection reset by peer23:40
elliottcable (~me@ell.io) left irc: Ping timeout: 252 seconds23:40
csenger (~user@dslb-084-058-161-075.pools.arcor-ip.net) joined #pypy.23:41
elliottcable (~me@ell.io) joined #pypy.23:41
CIA-1703papercrane 07roundup * 10#1020/segfault when running test_greenlet.py through pypy pytest.py: 23:42
CIA-17[new] On Linux x64:23:42
CIA-17{default//pypy} $ PYTHONPATH=. pypy pytest.py23:42
CIA-17pypy/module/test_lib_pypy/test_greenlet.py ... * 14https://bugs.pypy.org/issue102023:42
Nick change: nedbat_ -> nedbat23:46
csenger (~user@dslb-084-058-161-075.pools.arcor-ip.net) left irc: Ping timeout: 252 seconds23:48
csenger (~user@dslb-084-058-161-075.pools.arcor-ip.net) joined #pypy.23:50
whyking (~quassel@ip68-14-13-208.ri.ri.cox.net) joined #pypy.23:55
mat^2 (~mathias@212.130.113.35) left irc: 23:55
nickik (~nick@217.150.234.222) left irc: Quit: Verlassend23:58
--- Wed Jan 25 201200:00

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