yuyichao has quit [Ping timeout: 260 seconds]
asmeurer__ has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
yuyichao has joined #pypy
tbodt has joined #pypy
nimaje has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
phlebas has quit [Ping timeout: 240 seconds]
phlebas has joined #pypy
riddle has quit [Ping timeout: 240 seconds]
jiffe has quit [Ping timeout: 240 seconds]
tych0 has quit [Ping timeout: 240 seconds]
riddle has joined #pypy
jiffe has joined #pypy
marky1991 has quit [Read error: Connection reset by peer]
rowillia has quit [Remote host closed the connection]
tych0 has joined #pypy
gutworth has quit [Ping timeout: 255 seconds]
gutworth has joined #pypy
jcea has quit [Quit: jcea]
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
tbodt has quit [Read error: Connection reset by peer]
tbodt has joined #pypy
ArneBab_ has joined #pypy
tbodt has quit [Client Quit]
tbodt has joined #pypy
ArneBab has quit [Ping timeout: 260 seconds]
asmeurer__ has quit [Quit: asmeurer__]
asmeurer__ has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
asmeurer__ has quit [Client Quit]
lritter_ has joined #pypy
asmeurer has joined #pypy
ArneBab has joined #pypy
lritter has quit [Ping timeout: 240 seconds]
ArneBab_ has quit [Ping timeout: 258 seconds]
asmeurer has quit [Quit: asmeurer]
asmeurer_ has joined #pypy
asmeurer_ has quit [Quit: asmeurer_]
tbodt has joined #pypy
tbodt has quit [Client Quit]
asmeurer_ has joined #pypy
asmeurer_ has quit [Quit: asmeurer_]
asmeurer__ has joined #pypy
tilgovi has joined #pypy
asmeurer__ has quit [Quit: asmeurer__]
DragonSA has joined #pypy
DragonSA has joined #pypy
DragonSA has quit [Changing host]
tilgovi has quit [Ping timeout: 260 seconds]
asmeurer__ has joined #pypy
asmeurer__ has quit [Quit: asmeurer__]
jacob22_ has quit [Quit: Konversation terminated!]
asmeurer_ has joined #pypy
asmeurer_ has quit [Quit: asmeurer_]
vkirilichev has quit [Remote host closed the connection]
vkirilichev has joined #pypy
vkirilichev has quit [Ping timeout: 240 seconds]
forgottenone has joined #pypy
tilgovi has joined #pypy
amaury_ has joined #pypy
realitix has joined #pypy
arigato has joined #pypy
kirma has joined #pypy
amaury_ has quit [Ping timeout: 240 seconds]
gsnedders has quit [Ping timeout: 260 seconds]
gsnedders has joined #pypy
oberstet has joined #pypy
marr has joined #pypy
amaury_ has joined #pypy
DragonSA has quit [Remote host closed the connection]
amaury_ has quit [Quit: Konversation terminated!]
amaury has joined #pypy
arigato has quit [Quit: Leaving]
arigato has joined #pypy
arigato has quit [Read error: Connection reset by peer]
vkirilichev has joined #pypy
arigato has joined #pypy
asmeurer__ has joined #pypy
tilgovi has quit [Remote host closed the connection]
tilgovi has joined #pypy
asmeurer__ has quit [Client Quit]
amaury has quit [Quit: Konversation terminated!]
<kenaan_> danchr py3.5 48a6e79c2d32 /.hgignore: hgignore: ignore pypy3-c everywhere and libpypy on OS X
ArneBab has quit [Read error: Connection reset by peer]
ArneBab has joined #pypy
antocuni has joined #pypy
amaury has joined #pypy
tilgovi has quit [Remote host closed the connection]
jacob22_ has joined #pypy
amaury has quit [Ping timeout: 268 seconds]
jamesaxl has quit [Read error: Connection reset by peer]
jamesaxl has joined #pypy
antocuni has quit [Ping timeout: 260 seconds]
forgottenone has quit [Quit: Konversation terminated!]
forgottenone has joined #pypy
mattip_away has joined #pypy
<mattip_away> danchr: any idea why the _ssl_build script fails on the buildbot?
<mattip_away> maybe openssl on bencher4 is too old, pre-openssl 1.0.0 ?
mattip_away has quit [Quit: Page closed]
arigo has joined #pypy
arigato has quit [Quit: Leaving]
arigo is now known as arigato
* arigato fixes test_os_posix_fadvise
<arigato> it's very broken for several reasons
<arigato> for example, it doesn't pass at all with -A
forgottenone has quit [Ping timeout: 268 seconds]
<kenaan_> arigo py3.5 0c746868b18a /: Fix test, broken on several levels, and fix implementation to match.
adetokunbo has joined #pypy
<kenaan_> arigo py3.5 f9d363d1e2d3 /rpython/rlib/test/test_rposix.py: Fix test here too
<adetokunbo> Hi, does anyone have any info on the status of https://bitbucket.org/pypy/pypy/issues/2091/non-blocking-socketsend-slow-gevent? I'd like to contribute by working on it if it's still an issue.
<adetokunbo> Am I correct in thinking that this a related to the potential project (http://doc.pypy.org/en/latest/project-ideas.html#make-bytearray-type-fast) ?
<arigato> adetokunbo: sorry, you'd need fijal to answer that question
<arigato> I guess the first step is to write a three-lines test?
jcea has joined #pypy
<arigato> what is slow here is conn.send(data_memory[start:])
<arigato> where data_memory is a much longer string that what a single call to send() will actually consume
<arigato> I think on CPython it works by taking a time that does not depend on len(data_memory) at all
<adetokunbo> Ok. Reading through the thread, I got the impression that the issue was that conn.send was taking slices from data_memory, but that these slices were being copied unnecessarily
<arigato> yes
<arigato> I think that on CPython, conn.send(data_memory[start:]) is done by passing a pointer and a size around, and never actually doing the copy of all the data in "data_memory[start:]"
<arigato> on PyPy it doesn't work
<arigato> I think that "data_memory[start:]" by itself doesn't do a copy,
<arigato> but conn.send(m) does if m is not a string (e.g. is a memoryview)
<haypo> arigato: CPython 3 relies heavily on the Py_buffer API which can be seen as a pointer+size structure
<adetokunbo> So, I could not tell clearly from the thread, but I inferred that this because of how memoryview is implemented in terms of interpreter level buffer. I.e, that's why Jason and Fijal end up agreeing that improving bufferstr is the route to the solution
<arigato> right, so the first question is to double-check that it is still slow now (it probably is)
<arigato> then the problem of bufferstr() is that it returns an RPython string
<arigato> you'd like instead to return, say, an instance of a new small class with a few attributes
<arigato> similar to Py_buffer in CPython
<adetokunbo> ok
<arigato> basically, a raw pointer, a size, a reference to an object to keep alive
<haypo> arigato: hi. if you have free time today, i would be curious if you could take a look at genshi benchmark which becomes 4.8x slower over time on PyPy: http://haypo-notes.readthedocs.io/pypy_warmups.html#genshi-text-loops-8-bug
<arigato> and maybe something more to ensure that the string doesn't move in memory while you're using it
<haypo> arigato: (on CPython, the performance is mostly steady)
<arigato> (in case the Py_buffer contains a raw pointer inside an RPython string)
<arigato> something using rffi.get_nonmovingbuffer()
<arigato> or rffi.get_nonmovingbuffer_final_null()
<arigato> it needs to be done carefully with try:finally:
<adetokunbo> arigato: thanks I'll start looking
<arigato> maybe simpler, as a good first step:
<arigato> use the RPython buffer object's get_raw_address() method
<arigato> this can actually play tricks if the buffer is based on an RPython string, after which the string is guaranteed never to move again
<arigato> (see rpython.rlib.buffer for get_raw_address)
<arigato> then the goal is to replace the unwrap_spec(...'bufferstr'...) inside pypy.module._socket.interp_socket for sendall() and other functions
<arigato> with e.g. unwrap_spec(...'raw_ptr'...)
<arigato> or maybe, just 'buffer', and you get a Buffer instance
<adetokunbo> thanks again! I'll begin by confirming that this is indeed still slow, then I will attempt this simpler approach you've outlined.
<arigato> seems that all pieces are here nowadays, it's only a matter of putting them together. this code (e.g. in pypy.module._socket) was written long ago, before the GC had any ability to freeze object positions
<arigato> we could easily add to the class Buffer a context manager, so that if you say "with buffer as raw_ptr:" you get a raw ptr valid for the duration of the "with"
<arigato> then using it in pypy.module._socket is easy
<arigato> well, "easy" in both cases with enough quotes
amaury_ has joined #pypy
<adetokunbo> ok
<danchr> mattip_away: sounds likely; that builder is using OS X 10.9, which is rather old, and likely includes headers for the system OpenSSL — which is 0.9.8
<danchr> later versions dropped the headers, but retained the library
<danchr> (ideally, PyPy/CPython should use one of the system frameworks on OS X rather than OpenSSL, but that seems like a significant undertaking, and might not even be possible depending on the API exposed)
arigo has joined #pypy
antocuni has joined #pypy
amaury_ has quit [Ping timeout: 268 seconds]
adetokunbo has quit [Ping timeout: 260 seconds]
Rhy0lite has joined #pypy
marky1991 has joined #pypy
jacob22_ has quit [Ping timeout: 240 seconds]
amaury_ has joined #pypy
<haypo> arigato: did you have time to look at http://haypo-notes.readthedocs.io/pypy_warmups.html#genshi-text-loops-8-bug ? is it something that you already saw in the past? (program being slower and slower, up to 4.8x slower)
adamholmberg has joined #pypy
girish946 has joined #pypy
jacob22_ has joined #pypy
jamesaxl has quit [Quit: WeeChat 1.7]
amaury_ has quit [Ping timeout: 260 seconds]
yuyichao has quit [Ping timeout: 255 seconds]
vkirilic_ has joined #pypy
vkirilichev has quit [Ping timeout: 240 seconds]
vkirilic_ has quit [Read error: Connection reset by peer]
vkirilichev has joined #pypy
Tiberium has joined #pypy
yuyichao has joined #pypy
girish946 has quit [Quit: Leaving]
girish946 has joined #pypy
<tos9> Has anyone successfully managed to install matplotlib on OSX
<tos9> Which has mattip saying to delete some random stuff, and I was hoping to be lazy :)
<tos9> Looks like installing even just subprocess32 itself blows up. Maybe that one is easier to fix.
tbodt has joined #pypy
jamesaxl has joined #pypy
<ronan> haypo: "the Py_buffer API which can be seen as a pointer+size structure" No, no, no, no, no! That's a dangerous misconception whose consequences I've been fighting for 2 weeks.
<ronan> only contiguous, 1-D Py_buffers may plausibly be thought of as pointer+size
<haypo> ronan: most converters require contiguous 1-D data
<ronan> yes, but all code handling buffers needs to consider the general case
<haypo> ronan: it depends if a function converts to Py_buffer or gets a Py_buffer
<haypo> most Python functions convert to Py_buffer
<haypo> well, ok, let's be honest
<haypo> i never understood Py_buffer :-D
<haypo> and the doc doesn't help
realitix has quit [Ping timeout: 245 seconds]
<nopf> ll
girish946 has quit [Quit: Leaving]
vkirilichev has quit [Remote host closed the connection]
vkirilichev has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
arigo has quit [Read error: Connection reset by peer]
vkirilichev has quit [Remote host closed the connection]
vkirilichev has joined #pypy
vkirilichev has quit [Ping timeout: 258 seconds]
ramonvg has joined #pypy
arigato has quit [Quit: Leaving]
forgottenone has joined #pypy
panni_ has quit [Remote host closed the connection]
FASDFSF has joined #pypy
panni_ has joined #pypy
panni_ has quit [Remote host closed the connection]
panni_ has joined #pypy
mattip has joined #pypy
kushal has quit [Remote host closed the connection]
asmeurer_ has joined #pypy
<FASDFSF> does mypy work in tandem with pypy3 ?
<FASDFSF> or in other words will pypy3 fail to work with code with static types?
asmeurer_ has quit [Client Quit]
<mattip> FASDFSF: adding typing to python code does not change anything in the python runtime
<mattip> FASDFSF: the types are only used by linters such as mypy as a guide to writing better code
<mattip> so it is not really "static types"
FASDFSF has quit [Quit: Leaving]
kipras`away is now known as kipras
<cfbolz> Heh
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
<mattip> tos9: we need someone on MacOS to put #ifdef PYPY_VERSION around definition and use of wait_for_stdin,
<mattip> tos9: and then see if matplotlib works
<tos9> mattip: Cool, I can probably try that -- that'd be in the matplotlib sources?
<mattip> but OTOH tkinter backend is broken anyway, so it is a bit pointless right now
<mattip> tos9: yes, in _macosx.m
tbodt has quit [Client Quit]
<tos9> Yeah I mean, I have no intention of using that backend
tbodt has joined #pypy
<mattip> well, at least then it should builld and install
fryguybob has quit [Ping timeout: 240 seconds]
Taggnostr has joined #pypy
vkirilichev has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
vkirilichev has quit [Remote host closed the connection]
vkirilichev has joined #pypy
DragonSA has joined #pypy
DragonSA has joined #pypy
DragonSA has quit [Changing host]
kushal has joined #pypy
kushal has quit [Changing host]
kushal has joined #pypy
oberstet has quit [Ping timeout: 245 seconds]
marr has quit [Ping timeout: 268 seconds]
DragonSA has quit [Quit: Konversation terminated!]
antocuni has quit [Ping timeout: 258 seconds]
<kenaan_> rlamy PyBuffer 165dc3ba1754 /: hg merge py3.5
<kenaan_> rlamy PyBuffer e30a5a8a4062 /pypy/: Fix interaction of space.getarg_w('w*', ...) and CPyBuffer
<bbot2_> Started: http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-64/builds/4547 [ronan: force build, PyBuffer]
<bbot2_> Started: http://buildbot.pypy.org/builders/own-linux-x86-64/builds/5873 [ronan: force build, PyBuffer]
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
arigato has joined #pypy
<mattip> I have been staring at this valgrind traceback for an hour, trying to figure it out
<mattip> valgrind sees an invalid read, of something that was freed, in a GC cycle
<mattip> the "something" is a class.method returned from PyObject_GetAttrStr
<mattip> which is freed by calling method.tp_dealloc
<mattip> (the class.method is defined in C via tp_methods)
<mattip> but how can tp_dealloc be called from a bytecode?
tbodt has joined #pypy
<ronan> mattip: explicit del, maybe??
<mattip> maybe, but AFAICT that object never escapes the 10 lines of C it lives in inside a block of cython-generated code
tbodt has quit [Read error: Connection reset by peer]
marr has joined #pypy
tbodt has joined #pypy
forgottenone has quit [Ping timeout: 260 seconds]
tbodt has quit [Ping timeout: 260 seconds]
tbodt has joined #pypy
ramonvg has quit [Quit: Lost terminal]
tbodt has quit [Ping timeout: 240 seconds]
yuyichao has quit [Ping timeout: 260 seconds]
<mattip> maybe it is just random, I quit and ran again, this time I got "Invalid read of size 8", "Address 0x2554dbe8 is not stack'd, malloc'd or (recently) free'd"
<mattip> so maybe there is some corruption of the gc somehow
arigato has quit [Quit: Leaving]
tbodt has joined #pypy
Tiberium has quit [Remote host closed the connection]
Rhy0lite has quit [Quit: Leaving]
* mattip zzz
mattip has left #pypy ["bye"]
oberstet has joined #pypy
<bbot2_> Failure: http://buildbot.pypy.org/builders/own-linux-x86-64/builds/5873 [ronan: force build, PyBuffer]
antocuni has joined #pypy
gsnedders has quit [Ping timeout: 245 seconds]
yuyichao has joined #pypy
gsnedders has joined #pypy
<bbot2_> Failure: http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-64/builds/4547 [ronan: force build, PyBuffer]
inhahe_ has quit [Read error: Connection reset by peer]
inhahe_ has joined #pypy
tbodt has quit [Read error: Connection reset by peer]
tbodt has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
Rhy0lite has joined #pypy
tbodt has joined #pypy
yuyichao has quit [Ping timeout: 260 seconds]
jamesaxl has quit [Quit: WeeChat 1.7]
oberstet has quit [Ping timeout: 240 seconds]
inhahe_ has quit [Read error: Connection reset by peer]
inhahe_ has joined #pypy
yuyichao has joined #pypy
Garen has joined #pypy
adamholmberg has quit [Remote host closed the connection]
Rhy0lite has quit [Quit: Leaving]
asmeurer_ has joined #pypy
asmeurer_ has quit [Client Quit]
tormoz has quit [Ping timeout: 240 seconds]
marky1991 has quit [Read error: Connection reset by peer]
antocuni has quit [Ping timeout: 260 seconds]
vkirilichev has quit [Remote host closed the connection]
vkirilichev has joined #pypy
vkirilichev has quit [Ping timeout: 260 seconds]
FASDFSF has joined #pypy
<FASDFSF> mattip: ik, but last time I entered such typed code, it threw a syntax error
fryguybob has joined #pypy
jcea has quit [Ping timeout: 252 seconds]
asmeurer_ has joined #pypy
tbodt has quit [Remote host closed the connection]
tbodt has joined #pypy
jcea has joined #pypy
adamholmberg has joined #pypy
adamholmberg has quit [Ping timeout: 255 seconds]
jodal has quit [Quit: jodal]