#pypy IRC log for Sunday, 2011-11-06

ojii (~ojii@68-53.3-85.cust.bluewin.ch) left irc: Quit: Leaving00:05
berdario (~quassel@host66-14-dynamic.52-82-r.retail.telecomitalia.it) joined #pypy.00:17
tos9 (~tos9@unaffiliated/tos9) left irc: Quit: leaving00:23
tos9 (~tos9@unaffiliated/tos9) joined #pypy.00:24
tilgovi (~randall@50-0-141-194.dedicated.static.sonic.net) joined #pypy.00:28
tilgovi (~randall@50-0-141-194.dedicated.static.sonic.net) left irc: Changing host00:28
tilgovi (~randall@couchdb/developer/tilgovi) joined #pypy.00:28
_pyre_ (~stian@137.241.189.109.customer.cdi.no) left irc: Quit: Leaving.00:31
aat (~aat@cpe-72-225-174-173.nyc.res.rr.com) joined #pypy.00:32
mwhudson (~mwh@12.172.25.68) joined #pypy.00:34
mwhudson (~mwh@12.172.25.68) left irc: Changing host00:34
mwhudson (~mwh@linaro/mwhudson) joined #pypy.00:34
dalke (~Adium@c-2ec28077-74736162.cust.telenor.se) joined #pypy.00:36
dalkeIn pypy's (limited) numpy support, is there a way to get the data address in such a way that I can pass it to a ctypes function?00:37
dalkeI believe the way to do that in standard CPython is something like arr.ctypes.data_as(_ct.POINTER(_ct.c_double))00:38
dalkeBut arr.ctypes isn't in the current pypy00:39
dalkeI'll accept any replacement.00:39
aat (~aat@cpe-72-225-174-173.nyc.res.rr.com) left irc: Quit: Computer has gone to sleep.00:43
gtaylor (~gtaylor@108-196-160-120.lightspeed.tukrga.sbcglobal.net) joined #pypy.00:49
stakkars_ (~tismer@213-65-251-34-no35.business.telia.com) joined #pypy.00:51
stakkars (~tismer@213-65-251-34-no35.business.telia.com) left irc: Ping timeout: 256 seconds00:54
Nick change: stakkars_ -> stakkars00:54
ramusara (~ramusara@220.156.210.236.user.e-catv.ne.jp) joined #pypy.00:59
berdario (~quassel@host66-14-dynamic.52-82-r.retail.telecomitalia.it) left irc: Ping timeout: 240 seconds01:01
Rhyolite (dje@pool-108-6-25-71.nycmny.fios.verizon.net) left #pypy ("Leaving").01:02
Rhyolite (~dje@pool-108-6-25-71.nycmny.fios.verizon.net) joined #pypy.01:02
bbot23Success: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64/builds/12801:05
berdario (~quassel@host66-14-dynamic.52-82-r.retail.telecomitalia.it) joined #pypy.01:15
mwhudson (~mwh@linaro/mwhudson) left irc: Remote host closed the connection01:23
dalkeOkay, the f2pypy code is checked in. The code mostly works on python2.7. There are things that pypy's numpypy needs before it will work for pypy. There's still a lot of testing needed, a code cleanup, and all the other wonderful things that nees to happen to get working software &. working.01:34
bbot24Failure: 15http://buildbot.pypy.org/builders/own-macosx-x86-32/builds/70301:35
dalkeI would like to be able to generate timing numbers, to see if calling via pypy's ctypes API was faster than through f2py's cpython extension, but that looks like it will need to be some other time.01:36
dalke (~Adium@c-2ec28077-74736162.cust.telenor.se) left irc: Quit: Leaving.01:36
bbot2Started: 15http://buildbot.pypy.org/builders/own-linux-x86-32/builds/182601:46
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-64/builds/55801:46
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-jit-macosx-x86-64/builds/25601:46
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-64/builds/60201:46
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-32/builds/108901:46
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-Ojit-no-jit-linux-x86-32/builds/78801:46
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-32/builds/142101:46
bbot2Started: 15http://buildbot.pypy.org/builders/own-linux-x86-64/builds/69001:46
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-jit-win-x86-32/builds/25401:46
tlynn (~tlynn@cpc6-cmbg14-2-0-cust121.5-4.cable.virginmedia.com) left irc: Ping timeout: 253 seconds01:49
kkris1 (~kris@93-82-39-52.adsl.highway.telekom.at) left irc: Ping timeout: 240 seconds02:06
JaRoel|4d (~jaroel|4d@2001:980:7133:1:49c3:162:1eb7:84da) joined #pypy.02:08
aat (~aat@cpe-72-225-174-173.nyc.res.rr.com) joined #pypy.02:11
hruske (~Gasper@188-230-156-183.dynamic.t-2.net) left irc: Read error: Operation timed out02:14
DasIch (~dasich@p3E991FE4.dip.t-dialin.net) left irc: Ping timeout: 260 seconds02:14
`fox` (~fox@93-32-115-116.ip33.fastwebnet.it) joined #pypy.02:17
aat (~aat@cpe-72-225-174-173.nyc.res.rr.com) left irc: Quit: Computer has gone to sleep.02:19
kkris (~kris@80-123-39-150.adsl.highway.telekom.at) joined #pypy.02:21
aat (~aat@cpe-72-225-174-173.nyc.res.rr.com) joined #pypy.02:23
aat (~aat@cpe-72-225-174-173.nyc.res.rr.com) left irc: Client Quit02:25
DasIch (~dasich@p4FFDE475.dip.t-dialin.net) joined #pypy.02:26
aat (~aat@cpe-72-225-174-173.nyc.res.rr.com) joined #pypy.02:27
aat (~aat@cpe-72-225-174-173.nyc.res.rr.com) left irc: Client Quit02:27
aat (~aat@cpe-72-225-174-173.nyc.res.rr.com) joined #pypy.02:29
gtaylor (~gtaylor@108-196-160-120.lightspeed.tukrga.sbcglobal.net) left irc: Remote host closed the connection02:36
aat (~aat@cpe-72-225-174-173.nyc.res.rr.com) left irc: Quit: Computer has gone to sleep.02:37
bbot23Success: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-32/builds/93202:38
`fox` (~fox@93-32-115-116.ip33.fastwebnet.it) left irc: Ping timeout: 244 seconds02:39
Sho_ (~EHS1@kde/hein) left irc: Quit: Stop leaking memory like it's going out of fashion.02:49
kkris (~kris@80-123-39-150.adsl.highway.telekom.at) left irc: Quit: Leaving.02:50
Shinata (~John@osbk-4db15087.pool.mediaWays.net) left irc: Ping timeout: 240 seconds02:50
Moku (~John@osbk-4db068b4.pool.mediaWays.net) joined #pypy.02:50
Nick change: Moku -> Guest5700602:51
tilgovi (~randall@couchdb/developer/tilgovi) left irc: Remote host closed the connection02:59
Sho_ (~EHS1@kde/hein) joined #pypy.03:00
bbot23Success: 15http://buildbot.pypy.org/builders/own-linux-x86-32/builds/182603:38
bbot24Failure: 15http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-32/builds/142104:35
bbot24Failure: 15http://buildbot.pypy.org/builders/pypy-c-Ojit-no-jit-linux-x86-32/builds/78804:44
Alex_GaynorRhyolite: so after a make bootstrap, where's my resulting GCC?04:46
bbot24Failure: 15http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-32/builds/108904:49
bbot24Failure: 15http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-64/builds/60205:00
bbot24Failure: 15http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-64/builds/55805:05
Garen (garen@69.76.18.3) left irc: Remote host closed the connection05:38
bbot24Failure: 15http://buildbot.pypy.org/builders/pypy-c-jit-macosx-x86-64/builds/25605:39
asmeurer (~asmeurer@dhcp-baca-230.resnet.nmt.edu) left irc: Quit: asmeurer05:56
bbot23Success: 15http://buildbot.pypy.org/builders/own-linux-x86-64/builds/69006:04
Circlefusion (~cf@74-138-199-109.dhcp.insightbb.com) left irc: Read error: Connection timed out06:42
Circlefusion (~cf@74-138-199-109.dhcp.insightbb.com) joined #pypy.06:43
bbot24Failure: 15http://buildbot.pypy.org/builders/pypy-c-jit-win-x86-32/builds/25406:45
Garen (garen@69.76.18.3) joined #pypy.06:56
Guest57006 (~John@osbk-4db068b4.pool.mediaWays.net) left irc: Ping timeout: 240 seconds07:13
Guest57006 (~John@osbk-4db068b4.pool.mediaWays.net) joined #pypy.07:21
DanKluev (~root@81-250-adsl.vntc.ru) joined #pypy.07:31
kenaan12arigo stm 110782958b144f 15/pypy/: Hard-code the STM logic here for now.07:32
kenaan12arigo default 1116447af5aece 15/lib-python/conftest.py: Get rid of the test_distutils failure, which (for now) is really irrelevant.  We know that sys.get_config('CC') ret...07:32
kenaan12arigo default 11fa885677f10c 15/lib-python/modified-2.7/ctypes/test/test_simplesubclasses.py: This test no longer xfails.07:32
kenaan12arigo default 11ba608a73c81c 15/lib_pypy/_ctypes/structure.py: Fix test_bitfields just by relaxing this check here.07:32
aleksi (~aleksi@95-37-72-172.dynamic.mts-nn.ru) joined #pypy.07:34
aleksi (~aleksi@95-37-72-172.dynamic.mts-nn.ru) left irc: Remote host closed the connection07:55
aleksi (~aleksi@95-37-72-172.dynamic.mts-nn.ru) joined #pypy.08:13
dalke (~Adium@c-2ec28077-74736162.cust.telenor.se) joined #pypy.08:14
Sho_ (~EHS1@kde/hein) left irc: Quit: Stop leaking memory like it's going out of fashion.08:15
aleksi (~aleksi@95-37-72-172.dynamic.mts-nn.ru) left irc: Remote host closed the connection08:21
rekamso (~textual@c-71-197-238-154.hsd1.wa.comcast.net) left irc: Quit: Computer has gone to sleep.08:27
`fox` (~fox@93-32-115-116.ip33.fastwebnet.it) joined #pypy.08:51
nekto0n (~nekto@79.164.107.107) joined #pypy.08:52
nekto0nhi! can I use alloca from rpython? I want to allocate statvfs_struct for os.statvfs() call08:58
Vorpal (~AnMaster@unaffiliated/anmaster) joined #pypy.08:59
tlynn (~tlynn@cpc6-cmbg14-2-0-cust121.5-4.cable.virginmedia.com) joined #pypy.09:20
stakkarshakanardo: hi!09:26
stakkarshakanardo: are we sprinting today, or is it break-day?09:26
stakkars(it's me, chris)09:27
arigato (~arigo@c-c4c4e055.1321-1-64736c11.cust.bredbandsbolaget.se) joined #pypy.09:32
stakkarsarigato: hi Armin,09:32
arigatohi09:32
stakkarsare we sprinting today?09:32
arigatoyes09:32
stakkarsor is it a break - ah!09:32
tito (~tito@pdpc/supporter/bronze/tito) left irc: Read error: Connection reset by peer09:33
kenaan12hakanardo jit-targets 11865055ea9253 15/pypy/jit/metainterp/test/test_ajit.py: fix tests09:33
kenaan12hakanardo jit-targets 115e84c483e93d 15/pypy/jit/metainterp/: support for bridges in progress09:33
kenaan12hakanardo jit-targets 11a5e1ecd1e6cf 15/pypy/jit/metainterp/: first test with a brigde passing09:33
kenaan12hakanardo jit-targets 1172538680f42b 15/pypy/jit/metainterp/history.py: we now need inputargs again...09:33
kenaan12hakanardo jit-targets 1188a4fdc05e1f 15/pypy/jit/metainterp/optimizeopt/unroll.py: we still need it here09:33
kenaan12hakanardo jit-targets 1150843084d602 15/pypy/jit/: reintroduce inputargs on loops09:33
stakkarsok, I will shower, shave, brush and come over ;-)09:33
tito (~tito@pdpc/supporter/bronze/tito) joined #pypy.09:34
arigatook :-)09:34
antocuni (~antocuni@c-c4c4e055.1321-1-64736c11.cust.bredbandsbolaget.se) joined #pypy.09:35
kenaan12hakanardo jit-targets 110faba264d761 15/pypy/jit/metainterp/compile.py: fix09:36
fijal (~fijal@AAubervilliers-651-1-72-233.w86-218.abo.wanadoo.fr) joined #pypy.09:39
fijalhi09:39
fijalAlex_Gaynor: ping?09:40
arigatohi09:40
fijalhow's the sprint?09:41
Action: fijal is sick slightly09:41
fijalis anto there?09:42
antocuniyes09:42
antocunihi09:42
antocunifijal: too bad that you didn't manage to come :-/09:42
fijalyes :/09:42
fijalon the flipside I would not be of much use sick09:42
stakkarsfijal: what are you suffering from?09:49
fijalno idea, probably a flu or just cold09:50
stakkarsget better!09:50
dalkeI have a rough version of f2pypy working, but it needs a few things from pypy's implementation before I can really work with it. 09:51
dalkeIs there any way to get the array and pass it to a ctypes-based function?09:52
fijaldalke: array as in numpy array?09:53
dalkeYes.09:53
dalkeNot an array.array()09:53
fijalno, but there should be one09:53
fijalit's relatively easy to add (I think)09:53
dalkeI currently use y[(offy.value):].ctypes.data_as(_ct.POINTER(_ct.c_double))09:53
dalkeWhere _ct is the ctypes module.09:53
fijalyou would need to implement __array_interface__ attribute on arrays09:54
fijalthis is relatively easy since we have all the necessary info09:54
dalkeI also need the .size attribute, at least, I think I do. That's how I implemented f2pypy's "len()" intrinsic, and it seems to do the right thing where len(array) is not.09:55
fijal.shape is what you use09:55
fijaland you multiple everything that's in shape09:56
fijalsimply09:56
fijalwell09:56
dalkenumpy.array(3).shape == ()09:56
fijalwe can expose .size09:56
dalkenumpy.array(3).size == 109:56
fijaldalke: well, sure09:56
fijalthat's a singleton09:56
fijala 0-dimensional array09:57
fijalyou can still use this if you want to09:57
fijalbut indeed, exposing size is easy09:57
fijalwant me to do it?09:57
dalkePlease, yes.09:57
dalkef2py's interface allows anything which can be converted into a numpy array. So I can pass it scalars, even for things which prefer an array.09:58
dalkeThe f2py interface does some range checking, eg, to see if the start position is 0<= offset < len(array).09:58
dalkeI can't use len(numpy.array(3)), but I can use numpy.array(3).size09:59
dalkeSo I rewrite that intrinsic. (I ended up writing a C expression parser, in order to generate the corresponding Python expression. Therefore, AST manipulation like this is pretty easy.)10:00
fijalnote that numpy.array(3) does not work on trunk10:00
fijalit works on numpy-multidim though10:00
fijalwhich I have to finish one day10:00
kenaan12fijal default 1129573471a8fd 15/pypy/module/micronumpy/: expose size attribute10:01
kenaan12fijal default 115a19f9787d6b 15/: merge default10:01
fijaldalke: here you go10:03
fijalI'll probably go to bed and maybe try to do a bit of multidim hacking later on10:03
dalkeThanks. I have no idea what to do with what you just said, but thanks. ;)10:03
fijalhaha10:03
fijalwith which part?10:03
kkris (~kris@93-82-34-117.adsl.highway.telekom.at) joined #pypy.10:04
dalke"default 29573471a8fd /pypy/module/micronumpy/: expose size attribute"10:04
fijalyou can now do numpy.array(3).size10:04
dalkeThat means I need to pull from default, then  .. rebuild pypy? Something I've never done.10:04
fijalwell, you can't do numpy.array(3) in pypy on trunk10:04
fijaldalke: how do you work on f2py?10:04
fijallet's maybe start the other way around :)10:05
dalkeIt generates a Python module which can work with CPython, and (in early testing) with pypy.10:05
dalke"early testing" means "before I added numpy.array"s.10:05
fijalok10:05
fijalso make it work with CPython don't worry10:05
dalkeIt's all a bunch of ctypes-based calls.10:06
fijalthen we can make it work with pypy10:06
dalkeYep.10:06
fijalgood :)10:06
dalkeAlso, support for numpy.array()'s "copy" parameter would be nice. Though I don't think I'm using it right since & oh! I need to explain my testing.10:06
fijalnumpy.array.copy is also easy10:07
fijalwe have to do it anyway10:07
dalkeI made a test suite, with SciPy's blas module as the reference.10:07
dalkeI comment out the scipi import of fblas and instead use the ctypes based version.10:08
dalkeSo, golden reference data with one, comparison to CPython+ctypes with the other.10:08
dalkeAnd the last it supposed to work unchanged with pypy's numpy.10:08
dalkeAt this point though I need to clean up the code and document what I did.10:09
fijalcool10:09
fijalis it commited anywhere?10:09
dalkeBut I need to take a break now and work on other projects. There will still be sprints on Tuesday or (better) Wednesday, right?10:09
ronnycan i have a look at the suit maybe?10:10
dalkeYes, it's in pypy's "f2pypy" repository.10:10
fijalcool10:10
fijaldalke: I'll make sure it runs on pypy's numpy then10:11
dalkeThere are two types of "blas" libraries. One is compiled for fortran, the other for C. They have different prototypes, since Fortran only calls by reference. This code won't work against the cblas module.10:11
dalkeGreat!10:11
fijaldalke: but it does require multi-dimensional arrays no?10:11
fijaloh10:11
fijaldo we need fortran-storing of arrays then?10:11
dalkeParts of it do, but I don't have tests for that. Really, I only have about 10 tests, and only for a couple of functions.10:12
dalkeAt some point, yes. I haven't written the tests for the parts of the code which use those.10:12
fijalok10:12
tilgovi (~randall@c-98-210-155-124.hsd1.ca.comcast.net) joined #pypy.10:12
tilgovi (~randall@c-98-210-155-124.hsd1.ca.comcast.net) left irc: Changing host10:12
tilgovi (~randall@couchdb/developer/tilgovi) joined #pypy.10:12
fijalwell single-dim arrays are fairly oblivious to that problem anyway10:13
dalkeYep!10:13
hruske (~Gasper@188-230-156-183.dynamic.t-2.net) joined #pypy.10:14
dalkeLooking at the f2py code, there's various things manipulating the array to transpose appropriately. There's a "lazy_transpose()" function, for example.10:14
dalkeWhat I don't know is if the "order : {'C', 'F', 'A'}, optional" flag of numpy.array will suffice.10:14
kenaan12arigo jit-targets 111772c5517e92 15/pypy/jit/metainterp/: Start fixing graphpage.py.10:15
mat^2 (~mathias@212.130.113.35) joined #pypy.10:15
nirbheek (~nirbheek@gentoo/developer/flyingspaghettimonster/nirbheek) joined #pypy.10:16
dalkeWhat I really want to do is get this into the working-prototype stage, then bring it up with the scipy developers - esp. the f2py author! - and get their more experienced advice.10:16
dalkeThe parts I've been working on are the ones that I have a lot of expertise; language parsing and adaptors to existing C code.10:16
dalke1 (~Adium@c-2ec28077-74736162.cust.telenor.se) joined #pypy.10:17
dalke (~Adium@c-2ec28077-74736162.cust.telenor.se) left irc: Read error: Connection reset by peer10:17
dalke1One of the neat things about this approach is that you can ship code to someone who doesn't have the scipy/shared libraries already pre-compiled. It would work, for example, on any Mac; since the needed "vecLib" library comes on every version of the OS.10:18
dalke1With some work, since of course the actual library name to import is OS dependent.10:19
fijaldalke1: nice10:20
mitsuhiko (~mitsuhiko@ubuntu/member/mitsuhiko) left irc: Ping timeout: 255 seconds10:20
fijalsince installing scipy is a mess10:20
nekto0nfound that cpython uses PyOS_setsig here and there in posixmodule. how can I do the same in pypy in ll_os?10:20
dalke1It works for this one case. However, a number of numeric packages are based on .a libraries, not .so. 10:21
dalke1A number more do strange #define tricks.10:22
dalke1There will still need to be a compiler-based solution for them.10:22
dalke1Luckily for me, Fortran doesn't have those tricks.10:22
Action: arigato greps for PyOS_setsig10:23
fijaldalke1: :)10:23
Action: fijal goes back to bed10:23
nekto0narigato: currently I'm trying to implement os.openpty()10:24
arigatonekto0n: seems to be the only user of PyOS_setsig10:25
arigatoalso, os.openpty() seems already implemented10:25
nekto0nhm... it's in issue833 list10:26
arigatowell when I start pypy 1.6, os.openpty() is found10:26
fijalok10:26
nekto0nthat's right, didn't check that :(10:26
fijalso an advice to optimize JS array access is to use WebGL arrays10:27
fijalsince they're typed10:27
arigatoyou also need to check trunk rather than 1.6 to be sure that it wasn't implemented in the meantime10:27
fijalnice10:27
fijalarigato: can we create 1.7 branch some time soon?10:28
fijalor do we still wait for EAGAIN patches?10:28
arigatofijal: it seems you already checked in 3f96afe7cdc210:30
fijalyes10:31
fijalso we have the same amount of guarantees as cPython now?10:31
Action: arigato just confused10:31
fijalsome stuff on this pull requests are real issues10:32
arigatoyou already checked this one month ago?  is it a part of the work done by stefanor?10:32
fijallike file.readline10:32
fijalno10:32
fijalit was one before there was an issue and a branch10:32
fijalsince later on it was found out we have more than one10:32
fijalalso pull request does not have an up-to-date diff10:33
arigatoit would have been nice for me to know that before doing the review10:33
arigatobecause the review also seems to include a(nother?) fix for the same issue10:34
arigatoso I'm just confused10:34
fijalit's not for the same issue10:34
fijalit's the same issue in different places10:34
fijalhttps://bitbucket.org/stefanor/pypy/compare/..pypy/pypy10:35
fijalthis is the correct diff10:36
arigatoI still think it's subtly broken10:38
fijalbecause there is a copy of the same code in 17 places?10:38
fijalor why?10:38
arigatoe.g. if you have a ReadlineInputStream and do readall()10:38
arigatoit will use the underlying readall()10:39
dalke1 (~Adium@c-2ec28077-74736162.cust.telenor.se) left irc: Read error: Connection reset by peer10:39
dalke (~Adium@c-2ec28077-74736162.cust.telenor.se) joined #pypy.10:39
arigatowhich may still raise EAGAIN (in case it doesn't get any data at all)10:40
arigatobut the ReadlineInputStream.readall() may have cached data to prepend10:40
costy_petrisor (~JDI@79.117.215.111) joined #pypy.10:40
arigatoin that case, if there is data in the cache, then ReadlineInputStream.readall() should just return the content of the cache10:40
arigatoand not raise EAGAIN10:40
hruskehi10:41
hruskeI'm experiencing problems with pypy and pyparsing, is there a known bug?10:42
arigatobasically it's a mess to propagate in streamio.py the behavior "must return a non-empty string; an empty string means end of file; or it can raise EAGAIN"10:42
arigatothe best solution would be to use in streamio.py a different api10:42
arigatoi.e. a different behavior10:42
fijalarigato: I fear I'll leave with this problem for a second and go to bed10:44
fijalwill be back online some time later10:44
fijal (~fijal@AAubervilliers-651-1-72-233.w86-218.abo.wanadoo.fr) left irc: Quit: Leaving10:44
mitsuhiko (~mitsuhiko@ubuntu/member/mitsuhiko) joined #pypy.10:44
nekto0nCan someone tell why text_extfunc.py fails on this: http://pastebin.com/2bCyuCmy with TyperError: don't know how to convert from <ListRepr * GcStruct list { length, items }> to <PyObjRepr * PyObject> ?10:51
tlynn (~tlynn@cpc6-cmbg14-2-0-cust121.5-4.cable.virginmedia.com) left irc: Ping timeout: 240 seconds11:00
antocunigood, using BLCR to preserve JITted code between subsequent runs seems to work kind of well11:04
antocunihttp://pastebin.com/MxXRjgTK11:05
antocuniin this example, I'm running richards with only 3 iterations11:05
antocunithe first time, it's slow because of the JIT11:05
antocuniin the subsequent runs, it's very fast11:05
dalke1 (~Adium@c-2ec28077-74736162.cust.telenor.se) joined #pypy.11:14
dalke (~Adium@c-2ec28077-74736162.cust.telenor.se) left irc: Read error: Connection reset by peer11:14
dalke1 (~Adium@c-2ec28077-74736162.cust.telenor.se) left irc: Client Quit11:16
ronnyantocuni: looks very neat, how exactly does it work?11:26
vak (5ce649f3@gateway/web/freenode/ip.92.230.73.243) joined #pypy.11:35
vakhi all11:35
vakwhat are the news from the sprint?11:35
vak"expectations are high" :-)11:35
`fox` (~fox@93-32-115-116.ip33.fastwebnet.it) left irc: Ping timeout: 240 seconds11:36
antocunironny: all the work is done by BLCR, which "simply" saves the current state of a program and lets you to restart it later11:37
tlynn (~tlynn@cpc6-cmbg14-2-0-cust121.5-4.cable.virginmedia.com) joined #pypy.11:59
tilgovi (~randall@couchdb/developer/tilgovi) left irc: Ping timeout: 240 seconds12:01
arigatopom pom pom 12:08
arigato...would say fijal12:08
arigatoI suppose we don't care about the following case because CPython doesn't either:12:13
arigatof.readline()12:13
arigatoif we get EAGAIN in the middle of the line12:14
arigatothen we should not return the incomplete line at all12:14
arigatobut keep it around in a buffer12:14
arigatofor later12:14
arigatowhen it is complete12:14
arigatoI start to suspect that it's to work around these bugs of CPython that there is in Lib/socket.py a complete file-like implementation at app-level12:15
hruskei have an issue with a script, where cpython completes in 30s, but pypy takes more than 30 min and still doesnt finish12:17
hruskehow do i debug this12:17
hruskepypy both 1.6 and trunk 12:18
aleksi (~aleksi@95-37-72-172.dynamic.mts-nn.ru) joined #pypy.12:20
k_bx (~k_bx@94.244.19.62) joined #pypy.12:22
k_bx_ (~k_bx@94.244.19.62) joined #pypy.12:22
aleksi (~aleksi@95-37-72-172.dynamic.mts-nn.ru) left irc: Remote host closed the connection12:22
k_bx_ (~k_bx@94.244.19.62) left irc: Remote host closed the connection12:24
k_bx (~k_bx@94.244.19.62) left irc: Read error: Connection reset by peer12:25
ronnyhruske: can you show the actual script?12:33
hruskesure12:33
hruskejust a second12:33
berdario (~quassel@host66-14-dynamic.52-82-r.retail.telecomitalia.it) left irc: Ping timeout: 260 seconds12:34
k_bx (~k_bx@94.244.19.62) joined #pypy.12:35
berdario (~quassel@host66-14-dynamic.52-82-r.retail.telecomitalia.it) joined #pypy.12:38
hruskeronny, here: http://www.kiberpipa.org/~hruske/stuff/pypy/12:39
hruskethe bug is visible with smaller dataset, but isn't so obvious.12:40
nekto0nCan someone tell why text_extfunc.py fails on this: http://pastebin.com/2bCyuCmy with TyperError: don't know how to convert from <ListRepr * GcStruct list { length, items }> to <PyObjRepr * PyObject> ?12:48
vak (5ce649f3@gateway/web/freenode/ip.92.230.73.243) left irc: Quit: Page closed12:49
berdario (~quassel@host66-14-dynamic.52-82-r.retail.telecomitalia.it) left irc: Ping timeout: 276 seconds12:53
aleksi (~aleksi@109-184-80-201.dynamic.mts-nn.ru) joined #pypy.12:54
arigatonekto0n: paste the complete traceback, please12:56
kenaan12hakanardo jit-targets 11a91e6cab9119 15/pypy/jit/metainterp/: a first failed atempt to support retrace, we need to redesign...12:57
kenaan12hakanardo jit-targets 11cb3302d943c7 15/pypy/jit/: Rename ProcedureToken to JitCellToken. It now refers to all compiled traces starting from a specific JitCel...12:57
kenaan12hakanardo jit-targets 119a23b1fe6986 15/pypy/jit/metainterp/: hg merge12:57
stakkarsarigato: could not stop ;-)  checking in showering and coming13:00
arigato:-)13:00
arigatowe're about to go to lunch13:00
arigatoI suppose13:00
stakkarswell, I had a lot of breakfast. no need to eat13:03
stakkarssee you13:03
arigatook, see you13:03
kenaan12ctismer win64_gborg 11f8438a89169b 15/pypy/: adjusted the overflow checks13:05
kenaan12ctismer win64_gborg 110944b1ca1861 15/pypy/translator/c/src/: Adjusted 'long' in most c/src files, but tried carefully not to mix up things where CPython is involved.13:05
antocuni (~antocuni@c-c4c4e055.1321-1-64736c11.cust.bredbandsbolaget.se) left irc: Read error: Connection reset by peer13:05
kenaan12ctismer win64_gborg 11626b202a12c5 15/: merge13:05
antocuni (~antocuni@c-c4c4e055.1321-1-64736c11.cust.bredbandsbolaget.se) joined #pypy.13:06
arigatostakkars: may I suggest "Signed" instead of "new_long"?13:08
arigatofor C code13:08
arigatoand Unsigned for "unsigned new_long"13:09
CIA-2403hruske 07roundup * 10#926/pyparsing: PyPy takes much more time than CPython: 13:14
CIA-24[new] I implemented a parser in pyparsing, which has absymal performance in PyPy.13:14
CIA-24Using the parser on smaller dataset results in PyPy being ~10x ... * 14https://bugs.pypy.org/issue92613:14
stakkarsI was not sure, but yes, 'Signed' is the name of the target integer, right?13:14
stakkarsarigato: is it correct to talk about 'Signed' and 'Unsigned'?13:15
stakkarsfor sure, it makes very explicit that we are in the target integer domain & ;-)13:16
hruskecan the pypy logo from bugs.pypy.org also be served from https?13:17
mat^2 (~mathias@212.130.113.35) left irc: 13:20
berdario (~quassel@host66-14-dynamic.52-82-r.retail.telecomitalia.it) joined #pypy.13:21
ronnyhruske: so far i learned, that the pyparsing sourcecode is damn nasty13:25
hruskei believe so too, yes13:25
ronnyi dont feel confident in being able to figure whats wrong13:29
nekto0narigato: here is the output from pytest: http://pastebin.com/WHSw5KqN13:35
mat^2 (~mathias@212.130.113.35) joined #pypy.13:36
aleksi (~aleksi@109-184-80-201.dynamic.mts-nn.ru) left irc: Ping timeout: 253 seconds13:40
kenaan12ctismer win64_gborg 118910ec31f7e2 15/pypy/translator/c/src/: reverted a few changes which cannot take external macros13:50
kenaan12ctismer win64_gborg 11c4ab5a26c418 15/pypy/: modulo 4 tests (flot/unicode conversion), it all works. Renamed stuff to 'Signed', 'Unsigned' after a suggest...13:50
hruskeronny, i think it has something to do with printing13:51
arigatonekto0n: ah13:55
amaury_ (~amaury_@46-127-23-192.dynamic.hispeed.ch) joined #pypy.13:55
arigatonekto0n: you cannot return a vstat_result from a test hre13:55
arigatohere13:55
arigatolook at how the other tests in test_extfunc deal with os.stat()13:55
nekto0narigato: roget that13:59
stakkars (~tismer@213-65-251-34-no35.business.telia.com) left irc: Quit: schnarch14:01
ronnyhruske: huh?!14:02
hruskeronny, seems like somebody was doing string concatenation with +14:02
hruskebut there's more weirdness in there14:03
berdario (~quassel@host66-14-dynamic.52-82-r.retail.telecomitalia.it) left irc: Ping timeout: 260 seconds14:07
nekto0narigato: should I do something like that? http://paste.pocoo.org/show/503691/14:10
arigatoyes14:14
arigatoit's a bit obscure, but good enough for this test14:14
fschwidom (~fschwidom@92.117.236.24) joined #pypy.14:17
nekto0narigato: hm..., doesn't work - http://paste.pocoo.org/show/503695/14:20
arigatoah yes14:22
arigatohum14:22
CIA-2403hruske 07roundup * 10#926/string concatenation using + kills PyPy: 14:25
CIA-24[chatting] After more debugging I found out this is a string concatenation issue, which was14:25
CIA-24done by adding strings together. This apparently kill ... * 14https://bugs.pypy.org/issue92614:25
arigatoah well, obvious: you return a list from def os_statvfs_llimpl(path):14:26
fschwidom (~fschwidom@92.117.236.24) left irc: Remote host closed the connection14:26
nekto0nyes14:26
nekto0nwhat should I do instead?14:27
arigatocopy os.stat?14:28
nekto0narghh, when I call os.statvfs(cwd) - I actually compile and call os_statvfs_llimpl?14:31
ronan (~ronan@host86-151-197-185.range86-151.btcentralplus.com) joined #pypy.14:31
k_bx (~k_bx@94.244.19.62) left irc: Ping timeout: 248 seconds14:39
arigatoyes14:47
arigatoos_statvfs_llimpl is the implementation of os.statvfs() in RPython14:47
arigatowhat you added to module/posix is the implementation of posix.statvfs() in the pypy interpreter14:48
arigatowhich is based on os.statvfs() in RPython14:48
nekto0narigato: using diffenerent modules under same name ('os') is confusing. but why can't I return list directly from does_stuff() function?14:53
mitsuhiko (~mitsuhiko@ubuntu/member/mitsuhiko) left irc: Excess Flood14:56
mitsuhiko (~mitsuhiko@hammett.srv.pocoo.org) joined #pypy.14:57
mitsuhiko (~mitsuhiko@hammett.srv.pocoo.org) left irc: Changing host14:57
mitsuhiko (~mitsuhiko@ubuntu/member/mitsuhiko) joined #pypy.14:57
arigatonekto0n: it's another issue.  it's because we never implemented returning lists from compiled functions14:59
arigatobut returning a tuple is fine15:00
arigatoa tuple of "simple" types15:00
arigatoalso in your paste: extdef([str], [rffi.ULONG], ...)15:02
arigatono clue where [rffi.ULONG] comes from15:02
arigatoaaaah, you meant "a list of ULONGs"15:03
arigatoooo...kkk15:04
arigatothat's a bit wrong, because some items can be longlongs15:04
arigatoat least I think so15:05
arigatoright now your code assumes that all members are exactly ulongs, so I'm sure it breaks on some platform or other15:06
arigatook, and also, forget about my suggestion to look at ll_os_stat.py: don't look there, as it is probably not helpful :-)15:06
arigatoll_os_stat.py is doing crazy things because the fields that are available are not the same on every platform15:07
arigatoin summary, I think you should replace this list-of-ulongs with a tuple of 10 elements15:09
arigatoeverywhere15:09
nekto0naha... I'll switch to return an rtuple15:09
kenaan12hakanardo jit-targets 1182923819cf55 15/pypy/jit/: traces from interpreter now working again15:09
nekto0nI want to implement fstatvfs too, how can I reuse CConfig from statvfs in ll_os?15:09
arigatoput it in its own method, and add caching to avoid calling platform.configure(CConfig) over and over again15:10
nekto0ncan I cache it in RegisterOs.__init__?15:11
arigatomaybe, but I would recommend to use your own method and your own attribute15:12
amaury (~amaury_@46-127-23-192.dynamic.hispeed.ch) joined #pypy.15:12
nekto0nokay...15:13
amaury_ (~amaury_@46-127-23-192.dynamic.hispeed.ch) left irc: Read error: Connection reset by peer15:13
stakkars (~tismer@c-c4c4e055.1321-1-64736c11.cust.bredbandsbolaget.se) joined #pypy.15:22
hruske (~Gasper@188-230-156-183.dynamic.t-2.net) left irc: Quit: Leaving15:44
fschwidom (~fschwidom@92.117.236.24) joined #pypy.15:44
amaury (~amaury_@46-127-23-192.dynamic.hispeed.ch) left irc: Ping timeout: 258 seconds15:48
`fox` (~fox@host229-107-dynamic.45-79-r.retail.telecomitalia.it) joined #pypy.16:09
nekto0narigato: is there any way to avoid copying statvfs_struct->rtuple->app level list->statvfs_result?16:13
arigatonekto0n: why the app-level list intermediate step?16:14
nekto0narigato: to pass to statvfs_result constructor16:17
kkris (~kris@93-82-34-117.adsl.highway.telekom.at) left irc: Ping timeout: 244 seconds16:30
`fox` (~fox@host229-107-dynamic.45-79-r.retail.telecomitalia.it) left irc: Ping timeout: 258 seconds16:31
dcolishI've attempted to add the weakref proxy methods to the c-api but its not working. i'm really just calling p.m._weakref.interp__weakref:proxy from the cpyext module which seems like it should work16:36
ramusara (~ramusara@220.156.210.236.user.e-catv.ne.jp) left irc: Quit: Leaving...16:37
dcolishi think it has something to do with how or when the W_Proxy.typedefs are used vs. the W_Proxy class, but i'm lost on how that really works16:37
amaury (~amaury_@46-127-23-192.dynamic.hispeed.ch) joined #pypy.16:37
tlynn (~tlynn@cpc6-cmbg14-2-0-cust121.5-4.cable.virginmedia.com) left irc: Ping timeout: 240 seconds16:40
dcolishhere's the very trivial and unhelpful diff http://paste.pocoo.org/show/503786/16:40
dcolishbut the good bits are that xapian's compiling now :)16:41
uche- (~uche@70-90-116-204-BusName-summit.co.hfc.comcastbusiness.net) left irc: Quit: Leaving...16:43
kkris (~kris@80-123-37-11.adsl.highway.telekom.at) joined #pypy.16:43
amaurydcolish: what's the issue with your PyWeakref_NewProxy?16:48
canta (~canta@77-20-123-240-dynip.superkabel.de) joined #pypy.16:53
kenaan12ctismer win64_gborg 110525e812c2ca 15/pypy/translator/c/primitive.py: corrected the formatting of constants. Pretty hackish by a small function that replaces L with LL, but very l...17:03
kenaan12ctismer win64_gborg 11f977b0b7d913 15/pypy/translator/c/primitive.py: simplified primitive.py by using the types 'Signed' and 'Unsigned' which are defined in g_prerequisites.h17:03
dcolishamaury: i dont think its returning the right kind of object and I'm really not sure how to test it. the xapian module simply does not work when i call objects that require a weakref proxy17:05
amaurytest test...17:07
dcolishfor example, the repr of the object returned is not the decr__repr__ that is added to the W_Proxy.tyepdef, its the repr for the W_Proxy class17:08
dcolishmy instinct makes me think that the W_Proxy.typedef does something during translation which isnt available during the cpyext tests without calling it directly17:09
dcolishand it cannot be called directly because the decr__new__ explicitly prevents this, but i'm not sure why that change was made17:10
`fox` (~fox@host229-107-dynamic.45-79-r.retail.telecomitalia.it) joined #pypy.17:10
ojii (~ojii@68-53.3-85.cust.bluewin.ch) joined #pypy.17:11
amauryhum17:12
amaurydid you test weakref.proxy() with pypy?17:12
dcolishyes, that works as expected17:12
kenaan12hakanardo jit-targets 11b262b6ae31dd 15/pypy/jit/: test_loop_1 passing17:12
kenaan12hakanardo jit-targets 119b87dd5eeb7f 15/pypy/jit/metainterp/: bridge support17:12
kenaan12hakanardo jit-targets 11d04c6e6f5e44 15/pypy/jit/metainterp/: retrace support17:12
strtok (~strtok@thales.strtok.net) joined #pypy.17:13
amaurydcolish: how did you test the repr of the returned objct?17:14
amaurydid you use space.repr(w_result)?17:14
dcolishah, no i just called repr17:14
amaury:-)17:14
dcolishone sec, let me try that17:14
dcolishok so that repr is correct17:15
dcolishhmm17:15
dcolishwell if thats working correctly, then i have no clue why the xapian code isnt working :/17:15
amaurythere are many reasons for a module to fail17:16
fijal (~fijal@AAubervilliers-651-1-72-233.w86-218.abo.wanadoo.fr) joined #pypy.17:16
strtokhttp://pastebin.com/ATieGByV <--I'm getting this exception thrown when executing pypy sandbox. Any ideas?17:17
fijalhi17:18
amaurystrtok: your paste is missing the error message!17:18
fijalstrtok: it looks concatenated indeed17:19
fijalwhy sandlib uses ll2ctypes, is yet another question...17:19
strtokyikes, sorry17:19
strtokAttributeError: 'NoneType' object has no attribute 'c_long'17:19
strtokthat's the last line of the stacktrace17:19
strtokhttp://pastebin.com/7PJ2sq5M there's the full paste :)17:20
fijalstrtok: do you have ctypes installed?17:20
strtokprobably not17:21
fijalwhat python do you have?17:21
fijalit's in stdlib since 2.517:21
strtokpython 2.717:21
fijalso it should work17:21
fijalcan you "import ctypes"?17:22
strtokyeah, that worked fine17:22
fijalit's interesting to see what went wrong then17:22
nekto0nis it ok that calling library functions for syscall involves double-triple copying in pypy? os.listdir can take a lot of time...17:22
fijalcan you do import ctypes.util17:22
fijalnekto0n: can you explain?17:23
strtoklyep17:23
arigatonekto0n: (sorry, I'm only very intermittently on irc, because we're at a live sprint right now)17:24
nekto0narigato: it's ok :)17:24
nekto0nfijal: os.listdir can return a long list and cpython creates 1 list, pypy does 217:24
strtoki figured it out17:24
fijalstrtok: yes?17:25
fijalnekto0n: why it does create 2?17:25
strtoki was overriding all of sys.path with the pypy libraries in my pyhon script that was executing sandlib17:25
strtoki wanted to use sys.path.extend to just add sandlib17:25
strtoki was following someone elses bad advice from a blog post :)17:25
strtokhttp://www.stephendiehl.com/?p=295 <--this post to be exact17:26
arigatofijal: it does create 2 lists (at least if you don't have list-strategies)17:26
arigatobut it's unclear to me what the real effect is17:26
nekto0nfijal: I guess because ll_os module creates interp level list and then app level list is created in interp_posix17:26
fijalwell, my question is why I suppose :)17:26
fijalnekto0n: I suppose it's fine17:27
fijalit'll go away (maybe) when we have list-strategies17:27
CIA-2403fijal 07roundup * 10#926/string concatenation using + kills PyPy: 17:28
CIA-24Yes, string concatenation is known to copy strings. Can we close it as won't fix17:28
CIA-24then or is there more in pyparsing that makes it slow?17:28
CIA-24Cheer ... * 14https://bugs.pypy.org/issue92617:28
Alex_Gaynorfijal: it will go away, you just change it to space.newlist_str(list_s) and it's magic17:28
nekto0nwow17:28
fijalAlex_Gaynor: hey, there are issues with the way numpy indexes arrays17:31
neunon (~neunon@unaffiliated/neunon) left irc: Ping timeout: 258 seconds17:31
Alex_Gaynorfijal: our numpy, or the real original, and what's the issue?17:31
fijaland I kind of could not get around it17:31
fijalthe real original17:31
fijalthe fact that we have two classes makes not much difference btw17:31
Alex_Gaynorok17:32
fijalthey have one, but they have a contiguous flag that is ifed all over the place17:32
fijalI would rather have two classes than a forest of ifs17:32
Alex_Gaynorsounds completely sane to me17:32
Alex_Gaynorit's almost like we invented OO for a reason17:32
fijalthen the issue is (only for views though) that they have a for loop17:33
Alex_Gaynor@jit.look_inside_iff17:33
Arach (~arach@2.95.176.212) left irc: Ping timeout: 276 seconds17:33
fijalno17:33
fijalit's more complex17:33
fijaliff what anyway?17:33
Alex_GaynorI dunno, show me the trace/code?17:34
fijalthe way you increase a pointer is that you increase by the smallest shard17:34
fijalbut every now and then you have to increase by a bigger one17:34
Alex_Gaynoris it a prblem if you have a call for this?17:34
fijalyes17:34
Alex_Gaynorit'll be inside a bridge anyways17:34
Alex_Gaynorwhy?17:34
fijala very big one17:34
fijalwell17:34
fijalyou can have an if17:34
fijalyou can always unroll the for, this is not an issue17:35
fijal(it's over shape indexes)17:35
fijalbut you'll end up with bridges17:35
Alex_Gaynoryou need to make sure shape is a part of signature17:35
fijalno, you don't17:35
fijalyou just unroll it always17:35
Alex_Gaynornot shape itself, but len(shape)17:35
fijalthat part is fine :)17:35
fijalif you put jit.unroll_safe, it's essentially doing that17:35
fijalthe problem really is a set of ifs17:36
Alex_Gaynoryes, but with bridges instead of different loops17:36
Alex_Gaynordifferent loops are better than bridges17:36
fijalyou don't end up with different loops17:36
fijalthe way you index, say arr[2::2,:]17:36
fijalwill be x += 217:36
Alex_Gaynoryou want the loop to be specialized for x += n I guess17:37
Alex_Gaynornot 217:37
fijalif x % length == 0: x += 417:37
fijalor so17:37
fijalyes yes, obviously17:37
fijalbut if you call a single ufunc17:37
fijalyou have to walk the entire iterator17:37
fijaland iterator uses different shards for different dimensions17:37
fijalso each iterator increase is usually a simple pointer increase17:38
fijalbut it happens inside a for loop, that's typically executed only once17:38
fijalnow if you end up with bridges, it's getting annoying17:38
fijalbecause stuff gets much slower17:38
fijalor we need to find a way that makes bridges less horrible17:38
Alex_Gaynora bridge for incrementing the shard seems ok17:38
fijalok17:38
fijalmaybe17:38
fijalI'll give it a go, I spent quite some time trying to understand the numpy code17:39
Alex_Gaynorlet's get it working first thing17:39
fijalit would be cool to do some experiments to see what's the best strategy17:40
strtokdoes pypy sandbox not have access to import signal?17:40
fijalok :-)17:40
fijalstrtok: probably not17:40
strtoki was trying to import unittest :) i guess i can just override signal17:40
kenaan12hakanardo jit-targets 11123a7a37c565 15/pypy/jit/metainterp/test/: fix tests17:41
`fox` (~fox@host229-107-dynamic.45-79-r.retail.telecomitalia.it) left irc: Ping timeout: 240 seconds17:42
neunon (~neunon@c-67-161-85-80.hsd1.wa.comcast.net) joined #pypy.17:43
neunon (~neunon@c-67-161-85-80.hsd1.wa.comcast.net) left irc: Changing host17:43
neunon (~neunon@unaffiliated/neunon) joined #pypy.17:43
Arach (~arach@FTTB-dynamic-195.218.181.142.ranetka.ru) joined #pypy.17:47
CIA-2403fijal 07roundup * 10#926/string concatenation using + kills PyPy: 17:47
CIA-24To be precise - strings are immutable in Python. CPython has a hack that avoids17:47
CIA-24doing a copy on string concatenation when refcount is 1. This is ... * 14https://bugs.pypy.org/issue92617:47
mat^2 (~mathias@212.130.113.35) left irc: Ping timeout: 245 seconds18:01
nekto0n (~nekto@79.164.107.107) left irc: Quit: nekto0n18:05
fijal (~fijal@AAubervilliers-651-1-72-233.w86-218.abo.wanadoo.fr) left irc: Ping timeout: 258 seconds18:08
ojii (~ojii@68-53.3-85.cust.bluewin.ch) left irc: Remote host closed the connection18:21
JaRoel (~jaroel|4d@sink.jaroel.nl) joined #pypy.18:26
JaRoel|4d (~jaroel|4d@2001:980:7133:1:49c3:162:1eb7:84da) left irc: Ping timeout: 244 seconds18:28
gutworth (~benjamin@dhcp-128-36-89-186.central.yale.edu) left irc: Ping timeout: 260 seconds18:33
gutworth (~benjamin@dhcp-128-36-89-186.central.yale.edu) joined #pypy.18:33
antocuni (~antocuni@c-c4c4e055.1321-1-64736c11.cust.bredbandsbolaget.se) left irc: Ping timeout: 260 seconds18:35
antocuni (~antocuni@c-c4c4e055.1321-1-64736c11.cust.bredbandsbolaget.se) joined #pypy.18:49
fijal (~fijal@AAubervilliers-651-1-72-233.w86-218.abo.wanadoo.fr) joined #pypy.19:10
unbit (~unbit@93-58-162-185.ip159.fastwebnet.it) joined #pypy.19:27
tilgovi (~randall@c-98-210-155-124.hsd1.ca.comcast.net) joined #pypy.19:30
tilgovi (~randall@c-98-210-155-124.hsd1.ca.comcast.net) left irc: Changing host19:30
tilgovi (~randall@couchdb/developer/tilgovi) joined #pypy.19:30
neunon (~neunon@unaffiliated/neunon) left irc: Ping timeout: 258 seconds19:31
Alex_Gaynorfijal: that benchmark you RT'd, we don't do so well on it either, worse than V819:32
fijalwell19:32
fijallist-strategies?19:32
fijalnumpy arrays?19:32
Alex_Gaynorif we do numpy arrays with custom dtypes http://docs.scipy.org/doc/numpy/reference/generated/numpy.dtype.html19:33
Alex_Gaynorwe can be as good as C19:33
Alex_Gaynorbut for now, not super19:33
neunon (~neunon@c-67-161-85-80.hsd1.wa.comcast.net) joined #pypy.19:33
neunon (~neunon@c-67-161-85-80.hsd1.wa.comcast.net) left irc: Changing host19:33
neunon (~neunon@unaffiliated/neunon) joined #pypy.19:33
asmeurer_ (~asmeurer@dhcp-baca-230.resnet.nmt.edu) joined #pypy.19:41
kenaan12hakanardo jit-refactor-tests 11c16efa936b3b 15/pypy/jit/metainterp/test/: converted tests19:44
fschwidom (~fschwidom@92.117.236.24) left irc: Ping timeout: 244 seconds19:45
kenaan12amauryfa py3k 11d34a3188c6c8 15/pypy/objspace/std/builtinshortcut.py: remove remnants of the getslice operations19:45
kenaan12amauryfa py3k 118299efdb68b6 15/pypy/module/sys/: Rename: sys.long_info -> sys.int_info19:45
kenaan12amauryfa py3k 11c30f57c0a8d2 15/pypy/objspace/std/: Share code between bytes and bytearray constructors. Add support for bytes(unicode_string, encoding)19:45
kenaan12amauryfa py3k 1181ac05c2ad26 15/pypy/objspace/std/objecttype.py: Fix object.__reduce_ex__19:45
kenaan12amauryfa py3k 110face036f35c 15/pypy/objspace/std/typeobject.py: Fix pickle of builtin types.19:45
kenaan12amauryfa py3k 11bab586dbcd9c 15/pypy/objspace/std/bytearraytype.py: Fix translation19:45
kenaan12amauryfa py3k 11a4cd79eb1bb5 15/pypy/interpreter/astcompiler/: Disallow implicit concatenation of bytes and strings19:46
kenaan12amauryfa py3k 114dbce2bccfb1 15/pypy/objspace/std/: unicode string should not join bytes items19:46
kenaan12amauryfa py3k 11b12056207f0c 15/pypy/module/imp/: Implement imp.cache_from_source()19:46
kenaan12amauryfa py3k 1190b2ca3bd7d6 15/pypy/module/imp/interp_imp.py: imp.get_magic() returns bytes19:46
kenaan12amauryfa default 11051fd7d46101 15/pypy/module/cpyext/: cpyext: Add PyUnicode_*Latin1 functions19:46
kenaan12amauryfa default 118ee82fc7f024 15/pypy/module/cpyext/: Export PyDescr_NewMethod and the PyWrapperDescr_Type it returns19:46
kenaan12amauryfa default 115bf4b00693af 15/pypy/module/cpyext/stubs.py: Remove implemented functions from stubs.py19:46
kenaan12amauryfa default 116cd69184b2f4 15/pypy/module/cpyext/: Implement PyUnicode_EncodeUTF819:46
kenaan12amauryfa default 11ac95da4c2214 15/pypy/module/cpyext/: All these functions PyUnicode_DecodeASCII &co are really similar, use a single template to generate them.19:46
kenaan12amauryfa default 116d0f05e9a3ac 15/pypy/module/cpyext/: Implement PyWeakref_NewProxy, thanks dcolish!19:46
Alex_Gaynoramaury: are we at a point where we can run the buildbot on py3k to get a TODO list for the branch?19:46
fijalAlex_Gaynor: list strategies?19:46
fijaldo you have a build around?19:46
Alex_Gaynorfijal: I think ~/pypy/pypy-c-alt on tannit19:46
fijaltry?19:47
fijalI'm a bit busy on the phone19:47
amauryAlex_Gaynor: let's give it a try19:47
Alex_Gaynorfijal: yes it is19:48
Alex_Gaynoramaury: cool :)19:48
amauryAlex_Gaynor: I'd suggest a applevel test, but without jit19:48
Alex_Gaynoramaury: ok, there's a builder for that, can you whack it?  I'm readnig through your commits :)19:48
amauryok, pypy-c-app-level-linux-x86-3219:49
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-32/builds/1422 [12afa, py3k]19:49
antocuni (~antocuni@c-c4c4e055.1321-1-64736c11.cust.bredbandsbolaget.se) left irc: Ping timeout: 260 seconds19:50
amauryAlex_Gaynor: Note that _rawffi and _hashlib are disabled19:51
Alex_Gaynorok19:51
arigato (~arigo@c-c4c4e055.1321-1-64736c11.cust.bredbandsbolaget.se) left irc: Ping timeout: 244 seconds19:51
tlynn (~tlynn@cpc6-cmbg14-2-0-cust121.5-4.cable.virginmedia.com) joined #pypy.19:54
costy_petrisor (JDI@79.117.215.111) left #pypy.19:56
amauryI have a TranslationError in interp_numarray.py19:57
amaury(main branch)19:57
Alex_Gaynoramaury: I guess it's fijal's fault, I'll take a look :)19:57
amauryin "descr_get_size"19:57
amauryself.size does not exist19:58
fijalpff19:58
amauryI'll try to use descr_len instead, as done 3 lines abovfe19:58
Alex_Gaynorno, it should be self.find_size I guess19:58
mat^2 (~mathias@212.130.113.35) joined #pypy.19:58
Alex_Gaynorit's not just a translation error though19:58
Alex_Gaynoryou can make it crash19:58
Alex_GaynorI'll fix it19:58
kenaan12alex_gaynor default 119e7c5b33e755 15/pypy/module/micronumpy/: fix a crash and translation in micronumpy20:01
Alex_Gaynoramaury: fixed20:02
amaury:-)20:02
tilgovi (~randall@couchdb/developer/tilgovi) left irc: Ping timeout: 245 seconds20:03
Alex_Gaynorno cookie for you fijal 20:04
fijal:(20:04
nirbheek (~nirbheek@gentoo/developer/flyingspaghettimonster/nirbheek) left irc: Ping timeout: 240 seconds20:06
amaurywow, tannit is really fast20:07
Alex_Gaynoramaury: can't google get you a fast computer :)20:08
amaurywell, my desktop machine is not that fast20:08
amauryit has many cores though :-/20:09
fijalI think RAM makes more difference20:09
bbot24Failure: 15http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-32/builds/1422 [12afa, py3k]20:09
Alex_Gaynor"pypy is a race between the industry trying to build machines with more and more resources, and the pypy developers trying to eat all of them. So far, the winner is still unclear"20:09
amauryWhat does this mean? http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-32/builds/1422/steps/shell_7/logs/stdio20:10
neunon (~neunon@unaffiliated/neunon) left irc: Quit: Leaving20:10
Alex_Gaynoramaury: I think it means that conftest.py references a test file that doesn't exist, I suppose it needs to be updated20:10
amauryOIC20:10
amauryI only ran "./pypy-c -m test_something"20:11
Alex_GaynorI don't think any developers locally use conftest20:11
fijal (~fijal@AAubervilliers-651-1-72-233.w86-218.abo.wanadoo.fr) left irc: Ping timeout: 258 seconds20:14
ronnyAlex_Gaynor, amaury: ah, thats the strange thing in place for running applevel tests of cpython20:20
nirbheek (~nirbheek@gentoo/developer/flyingspaghettimonster/nirbheek) joined #pypy.20:20
Alex_Gaynorronny: it's the thing for running CPython's unittests under py.test, AFAIK20:21
ronnyAlex_Gaynor: yup20:21
Alex_Gaynorwhile taking into account our modified- director20:21
Alex_GaynorI guess if we kill modified in py3k that might remove the need for it20:21
amauryit's not necessary20:21
ronnyjust remove the listings that are gone in 3.x20:21
amaurytest.regrtest already has code to read modified-lib20:21
Alex_Gaynorronny: and add the new ones :)20:22
amauryI'll try to do it20:22
ronnyhmm20:22
CIA-2403hruske 07roundup * 10#926/string concatenation using + kills PyPy: 20:22
CIA-24Is there a possibility, that a warning would be issued if a str + str is20:22
CIA-24detected in a loop?20:22
CIA-24Going from 30s to more than 30 minutes+ without a ... * 14https://bugs.pypy.org/issue92620:22
ronnyi should take a look at pyrepl again, the keymap stuff is strange20:22
amauryis pypy built with stackless by default?20:24
amauryor stacklet at least20:24
ronnyamaury: these days yes20:24
amaurydoesn't this add overhead to the whole interpreter?20:24
ronnyamaury: the new way to deal with it is llways supportable and doesnt make translation more costly20:24
Alex_Gaynoramaury: no, it works by copying the stack, so it only has overhead if you use it20:25
amaurycool20:25
amauryabout the str.__iadd__ issue: couldn't the JIT ensure that no other place can reference the string?20:40
kirmawouldn't this string copy thing be worked around by having "real" string object and "copied" string object, and real one would hold string size and data, copied would hold size and pointer to "real" object20:40
Alex_Gaynoramaury: in theory I think you can do something, in practice it feels like a lot of work.20:40
kirmaone could concatenate to the original without changing the earlier copies20:40
Alex_Gaynorkirma: it sounds like you're describing ropes.20:40
Action: Alex_Gaynor -> off20:41
kirmaof course things such as actual expansion of the string would be an issue, etc etc20:41
kirmaalex: maybe a subset of ropes20:41
kirmaprobably general-purpose ropes would be best solution if one is wanted (how did that fare in practice?)20:42
amaurypypy has an implementation of rope strings20:43
amauryit's not enabled by default20:43
kirmasuggesting to try that could be something20:43
amauryprobably too slow for usual cases20:43
kirmathe performance regression is, anyway, pretty nasty, although algorithm rewrite would certainly resolve it20:44
kirmanaively a "lots of concatenations -> different string representation" would sound reasonable, but figuring out what's "lots" without big overhead is another question20:50
amaury (~amaury_@46-127-23-192.dynamic.hispeed.ch) left irc: Ping timeout: 244 seconds20:50
amaury (~amaury_@46-127-23-192.dynamic.hispeed.ch) joined #pypy.20:52
stakkars (~tismer@c-c4c4e055.1321-1-64736c11.cust.bredbandsbolaget.se) left irc: Quit: schnarch20:59
kirmamaybe there could be "string", "profiled string" and "roped string" objects?21:01
kirmastrings would be regular, profiled strings would be created at hot spots to figure out if they contribute to ropes (come with roping sum field), and if so, creation could be tuned to create roped strings instead21:02
gutworthit's actually normally easier just not to write silly O(n^2) algorithms21:03
Alex_Gaynor+1 gutworth21:03
kirmathat's true.21:03
Alex_Gaynorgutworth: if only we had an obvious StringBuilder class21:03
Alex_Gaynor:)21:03
kirmaI just wonder if many practical blocks of python code depend on this kind of magical CPython implementation performance details21:04
JaRoel (~jaroel|4d@sink.jaroel.nl) left irc: Ping timeout: 276 seconds21:09
Unhelpfuli typically use ''.join... is that terrible too? ;)21:17
JaRoel|4d (~jaroel|4d@sink.jaroel.nl) joined #pypy.21:18
kirmaI suppose that's better?21:19
amauryyes, no O^2 behaviour21:20
`fox` (~fox@host229-107-dynamic.45-79-r.retail.telecomitalia.it) joined #pypy.21:21
kirmajust thinking how jit/profiling could provide reasonably efficient runtime behavior even for code built on that CPython assumption... well, it could be done, but it's another question if it's quite worth the extra complexity21:23
amaurysame reasoning applies to CPython21:24
amauryand it was worth the extra complexity21:25
kirmaeasier there with guaranteed reference counting21:25
kirmabut of course even CPython regresses in case of less trivial code21:27
Unhelpfulisn't the ''.join pattern promoted as the best way to do it on CPython for some time now, too?21:43
amaury (~amaury_@46-127-23-192.dynamic.hispeed.ch) left irc: Ping timeout: 255 seconds21:48
amaury (~amaury_@46-127-23-192.dynamic.hispeed.ch) joined #pypy.21:50
ronnyUnhelpful: yes, however that doesnt mean it catches on reasonably well for legacy code21:52
Unhelpfulronny: it's been a *long* time :P21:52
ronnyUnhelpful: some code tends to be around for __long__ times21:53
antocuni (~antocuni@c-c4c4e055.1321-1-64736c11.cust.bredbandsbolaget.se) joined #pypy.21:54
costy_petrisor (~JDI@79.117.215.111) joined #pypy.21:54
k_bx (~k_bx@94.244.19.62) joined #pypy.21:55
tilgovi (~randall@c-98-210-155-124.hsd1.ca.comcast.net) joined #pypy.21:57
tilgovi (~randall@c-98-210-155-124.hsd1.ca.comcast.net) left irc: Changing host21:57
tilgovi (~randall@couchdb/developer/tilgovi) joined #pypy.21:57
`fox` (~fox@host229-107-dynamic.45-79-r.retail.telecomitalia.it) left irc: Ping timeout: 248 seconds21:58
htoothrot (~mux@unaffiliated/htoothrot) left irc: Changing host22:00
htoothrot (~mux@wikipedia/trekweb.michaelh) joined #pypy.22:00
htoothrot (~mux@wikipedia/trekweb.michaelh) left irc: Changing host22:01
htoothrot (~mux@wikipedia/trekweb.michealh) joined #pypy.22:01
htoothrot (~mux@wikipedia/trekweb.michealh) left irc: Changing host22:01
htoothrot (~mux@66-169-185-121.dhcp.ftwo.tx.charter.com) joined #pypy.22:01
kkris (~kris@80-123-37-11.adsl.highway.telekom.at) left irc: Ping timeout: 245 seconds22:04
uche_ (~uche@70-90-116-204-BusName-summit.co.hfc.comcastbusiness.net) joined #pypy.22:05
Unhelpfulronny: "F*** 'em if they can't t6a6k6e6 6a6 6j6o6k6e6update their code."? ;)22:08
kkris (~kris@80-123-37-11.adsl.highway.telekom.at) joined #pypy.22:24
htoothrot (~mux@66-169-185-121.dhcp.ftwo.tx.charter.com) left irc: Changing host22:30
htoothrot (~mux@unaffiliated/htoothrot) joined #pypy.22:30
bbot2Started: 15http://buildbot.pypy.org/builders/own-macosx-x86-32/builds/70422:46
bbot2Started: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64/builds/12922:46
bbot2Started: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-32/builds/93322:46
stakkars (~tismer@213-65-251-34-no35.business.telia.com) joined #pypy.22:49
kennethreitz (~kennethre@c-24-127-96-129.hsd1.va.comcast.net) left irc: Quit: Computer has gone to sleep.22:51
PiotrSikora (~none@nginx/adept/piotrsikora) left irc: Excess Flood22:56
costy_petrisor (JDI@79.117.215.111) left #pypy.22:58
PiotrSikora (~none@nginx/adept/piotrsikora) joined #pypy.22:58
kenaan12amauryfa py3k 11997bcc8c1c1f 15/lib-python/conftest.py: Update the list of test files with the content of 3.2/test/test_*.py. Tried to keep the previous attributes when th...23:10
kenaan12amauryfa py3k 111bab2dd470bf 15/pypy/translator/goal/app_main.py: Make sure sys.stdout or sys.stderr are initialized when app_main prints --version or --help23:11
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-32/builds/1423 [12afa, py3k]23:11
Alex_Gaynoramaury: btw if you didn't hear (I forget) we fixed the bootstrapping issue23:12
amaurythe \0 in long repr?23:13
Alex_Gaynoryeah23:13
amauryI've seen some fixes in the jit optimizer23:13
Alex_Gaynoryes, that's where the issue was23:13
amaurybut it's unclear which one it was23:14
Alex_Gaynoramaury: 23f5428f3b5223:15
tilgovi (~randall@couchdb/developer/tilgovi) left irc: Ping timeout: 255 seconds23:23
tlynn (~tlynn@cpc6-cmbg14-2-0-cust121.5-4.cable.virginmedia.com) left irc: Ping timeout: 240 seconds23:26
kenaan12ctismer win64_gborg 115a52e0062e49 15/pypy/: a little bit of comments for me ;-)23:27
kenaan12ctismer win64_gborg 11dc81624b6a84 15/pypy/rlib/rdtoa.py: got one of four things in test_typed.py to run. It is rffi related, the others probably as well. I want to ad...23:27
kenaan12ctismer win64_gborg 1184921a708527 15/pypy/module/: merge default23:29
k_bx (~k_bx@94.244.19.62) left irc: Ping timeout: 255 seconds23:33
bbot24Failure: 15http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-32/builds/1423 [12afa, py3k]23:34
Alex_Gaynoramaury: results seem totally useless :/  any idea what happened?23:36
amauryno, local translation will soon finish23:36
JaRoel|4d (~jaroel|4d@sink.jaroel.nl) left irc: Remote host closed the connection23:38
whitelynx (~whitelynx@75.111.197.204) joined #pypy.23:40
antocuni (~antocuni@c-c4c4e055.1321-1-64736c11.cust.bredbandsbolaget.se) left irc: Ping timeout: 260 seconds23:42
kkris (~kris@80-123-37-11.adsl.highway.telekom.at) left irc: Quit: Leaving.23:44
amauryAlex_Gaynor: Found the issue23:52
kenaan12amauryfa py3k 11ee437d31d9fe 15/pypy/tool/pytest/run-script/regrverbose.py: Fix for py.test running CPython test suite23:52
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-32/builds/1424 [12afa, py3k]23:53
Action: amaury ->sleep23:53
Alex_Gaynorgoodnight23:53
amaurythis works on my machine:   ./test_all.py ../lib-python/ --pypy=./pypy-c -k test_dict -s23:54
Alex_Gaynorcool23:58
--- Mon Nov 7 201100:00

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