antocuni changed the topic of #pypy to: PyPy, the flexible snake (IRC logs: https://botbot.me/freenode/pypy/ ) | use cffi for calling C | "PyPy: the Gradual Reduction of Magic (tm)"
amaury has quit [Ping timeout: 255 seconds]
drolando has joined #pypy
drolando has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
pilne has joined #pypy
drolando has joined #pypy
drolando has quit [Read error: Connection reset by peer]
drolando has joined #pypy
antocuni has joined #pypy
Nizumzen has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tormoz has joined #pypy
tbodt has joined #pypy
Rhy0lite has quit [Quit: Leaving]
ronan has quit [Ping timeout: 255 seconds]
dcrosta has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
marr has quit [Ping timeout: 248 seconds]
Hotpot33 has quit [Ping timeout: 250 seconds]
ronan has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
ronan has quit [Ping timeout: 256 seconds]
ronan has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
adamholmberg has quit [Remote host closed the connection]
tbodt has quit [Client Quit]
adamholmberg has joined #pypy
antocuni has quit [Ping timeout: 264 seconds]
adamholmberg has quit [Ping timeout: 240 seconds]
ceridwen_ has joined #pypy
ceridwen_ has quit [Changing host]
ceridwen_ has joined #pypy
ceridwen has quit [Ping timeout: 246 seconds]
<kenaan> rlamy py3.5 badb71ed332d /pypy/interpreter/: Port b0267eee69d8 to unicodehelper and fix it
drolando has quit [*.net *.split]
[0__0] has quit [*.net *.split]
jacob22_ has quit [*.net *.split]
jacob22_ has joined #pypy
drolando has joined #pypy
[0__0] has joined #pypy
tbodt has joined #pypy
tbodt has quit [Client Quit]
Nizumzen has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/]
<kenaan> rlamy py3.5 7b810b0bf663 /lib-python/3/test/test_compile.py: Adapt test_particularly_evil_undecodable to pypy
pilne has quit [Quit: Quitting!]
guilherme has joined #pypy
tbodt has joined #pypy
tbodt has quit [Ping timeout: 248 seconds]
<guilherme> Hi everyone, I'm new to rpython. Is there a way to speedup the translating process? Currently, the translator is taking almost 84 secs in my computer with simple programs.
<simpson> guilherme: No, that's actually a pretty fast translation. Which language are you implementing?
<guilherme> A toy language called 'Cool' (http://theory.stanford.edu/~aiken/software/cool/cool.html)
<simpson> Nifty. So, as a couple bullet points, PyPy implements Python entire, and it can take 40min or more to build, with quite a lot of RAM usage. Typhon implements Monte, a JS-sized language, and that builds in about 5min without a JIT or 15min with a JIT on my laptop.
ArneBab has joined #pypy
ArneBab_ has quit [Ping timeout: 240 seconds]
<guilherme> Wow! And the build is done incrementally? Like C/C++ where you only rebuild the files that changed? Or in every change you need to rebuild the entire project?
exarkun has quit [Ping timeout: 272 seconds]
<simpson> No, it's whole-program translation, so full rebuild.
jcea has quit [Remote host closed the connection]
exarkun has joined #pypy
<simpson> But most of the PyPy tests can be run untranslated, and that's the recommended design.
jcea has joined #pypy
<guilherme> Ok, I'm using the ebnfparse that lives under rpython.rlib.parsing! Do you know if it's possible to use it with python?
<guilherme> by python I mean a regular python interpreter
<simpson> Pretty much all RPython code should work fine untranslated, yes.
<simpson> You should know exactly what RPython does when it translates. First, it imports your program like normal Python code. Then, it looks at what's been imported into memory, and translates *that*.
<guilherme> :q!
<guilherme> sorry :)
jcea has quit [Remote host closed the connection]
guilherme has quit []
guilherme has joined #pypy
dddddd has quit [Remote host closed the connection]
forgottenone has joined #pypy
guilherme has quit [Remote host closed the connection]
<kenaan> rlamy py3.5 e170f5f30e32 /pypy/objspace/std/test/test_celldict.py: Add failing test that explains the failure in CPython's test_unencodable_filename()
jamesaxl has joined #pypy
exarkun has quit [Ping timeout: 240 seconds]
exarkun has joined #pypy
ceridwen_ is now known as ceridwen
Nizumzen has joined #pypy
_whitelogger has joined #pypy
asmeurer__ has joined #pypy
guilherme has joined #pypy
guilherme has quit [Ping timeout: 272 seconds]
zmt00 has quit [Quit: Leaving]
dcrosta has joined #pypy
tayfun26 has joined #pypy
<jneen> is there a documented reason that DecodingInputFilter et al are marked "NOT_RPYTHON"?
<jneen> and presuming i would like to read encoded files in a streaming fashion, is there a more recommended way to do so?
Nizumzen has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/]
tayfun26 has quit [Remote host closed the connection]
tayfun26 has joined #pypy
exarkun has quit [Ping timeout: 256 seconds]
exarkun has joined #pypy
dcrosta has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
asmeurer__ has quit [Quit: asmeurer__]
exarkun has quit [Ping timeout: 248 seconds]
exarkun has joined #pypy
asmeurer__ has joined #pypy
asmeurer__ has quit [Ping timeout: 260 seconds]
Hotpot33 has joined #pypy
Hotpot33 has quit [Ping timeout: 256 seconds]
Hotpot33 has joined #pypy
kenaan has quit [Read error: Connection reset by peer]
asmeurer has joined #pypy
<cfbolz> jneen: I suppose "because rpython's unicode support is a mess" is not a very satisfying answer, is it?
kirma has joined #pypy
<cfbolz> jneen: could you tell us a bit what your plans re unicode support are in tulip?
asmeurer has quit [Ping timeout: 240 seconds]
forgottenone has quit [Quit: Konversation terminated!]
asmeurer__ has joined #pypy
jamesaxl has quit [Read error: Connection reset by peer]
asmeurer__ has quit [Ping timeout: 248 seconds]
jamesaxl has joined #pypy
Jellyg00se has joined #pypy
antocuni has joined #pypy
marr has joined #pypy
Cheery has quit [Remote host closed the connection]
exarkun has quit [Ping timeout: 256 seconds]
exarkun has joined #pypy
<cfbolz> antocuni: ping?
<cfbolz> antocuni: I was wondering, what's the status of the cpyext branches?
<arigato> I should review and merge at least one of them
<antocuni> I think there is only one which is active
<antocuni> which is our capetonian friend, cpyext-avoid-roundtrip :)
<cfbolz> ok, would be cool to do that before the release
<cfbolz> right
<arigato> yes
<antocuni> the other branch I worked on was cpyexct-method-refactoring, but I already merged it inside avoid-roundtrip
<cfbolz> antocuni: I had an idea how to make passing arguments to C a bit cheaper, if I implement it would you be able to take a look (trying not to add more to Armin's load)
<antocuni> yes, sure
<antocuni> what's the idea?
<cfbolz> antocuni: right now passing a w_obj to C requires a dict lookup for non-ints, to get the corresponding pyobj, right?
<antocuni> yes
<cfbolz> I'd like to improve that for instances of C-defined classes, by storing a reference to the pyobj directly in the w_obj
<cfbolz> we can't do it for everything, since it would make all objects bigger
<antocuni> right
<antocuni> we already discussed something like this with arin
<antocuni> armin
<cfbolz> ok
<antocuni> there is a doc somewhere in extradoc I think
<cfbolz> where?
<antocuni> planning/cpyext.txt
<antocuni> the bulleted point about w_None
<antocuni> note that by looking at callgrind, this dict lookup never showed up as a bottleneck, because the rest was so awfully slow to hide it :)
<cfbolz> antocuni: my hacked together Version helps quite a bit on the second half of the benchmarks
<cfbolz> Those that do method calls
<antocuni> cool
<cfbolz> And right, I see the points about being a bit more general for None etc
<arigato> after improving the horribly slow things, other points stick out. easier to not improve the horribly slow stuff...
<cfbolz> arigato: haha
<antocuni> and probably W_TypeObject is the obvious next candidate; it is also already big, so adding an extra cpy_object field doesn't cost much
<cfbolz> antocuni: right, but is it passed to C a lot?
<antocuni> I think so, but I no longer remember why :)
<cfbolz> Hehe
<arigato> yes, I would guess it's because converting an obj to a PyObj needs to convert the type too
<cfbolz> OK, maybe
<cfbolz> I'll make a branch of cpyext-avoid-roundtrip and give it a go
dddddd has joined #pypy
asmeurer has joined #pypy
<antocuni> cfbolz: thanks
asmeurer has quit [Ping timeout: 272 seconds]
marr has quit [Read error: Connection reset by peer]
tav` has joined #pypy
marr has joined #pypy
tav has quit [Ping timeout: 240 seconds]
tav` is now known as tav
raynold has quit [Quit: Connection closed for inactivity]
antocuni has quit [Ping timeout: 240 seconds]
jamesaxl has quit [Read error: Connection reset by peer]
jamesaxl has joined #pypy
asmeurer has joined #pypy
exarkun has quit [Ping timeout: 240 seconds]
asmeurer has quit [Ping timeout: 256 seconds]
Cheery has joined #pypy
exarkun has joined #pypy
asmeurer has joined #pypy
asmeurer has quit [Ping timeout: 248 seconds]
jcea has joined #pypy
amaury has joined #pypy
mattip has joined #pypy
<mattip> it would be nice to include a ctypes benchmark to show progress with cpyext
<cfbolz> Yes
asmeurer has joined #pypy
<mattip> one easy to add might be "pip install numpy; python -c"import numpy; numpy.test()"
asmeurer has quit [Ping timeout: 240 seconds]
amaury has quit [Ping timeout: 248 seconds]
<fijal> does virtualenv work with pypy3.5?
<fijal> yes seems so
<fijal> Download error on https://pypi.python.org/simple/perf/: unknown url type: https -- Some packages may not be found!
<fijal> what is that exactly?
<fijal> Could not fetch URL https://pypi.python.org/simple/perf/: There was a problem confirming the ssl certificate: Can't connect to HTTPS URL because the SSL module is not available. - skipping
<fijal> ok, how do I build pypy3 with ssl support?
<arigato> on os/x I guess
<arigato> who knows
<fijal> no, baroquesoftware
<fijal> so linux
<fijal> well maybe ronan or mattip know
<fijal> from _pypy_openssl import ffi
<fijal> ImportError: No module named '_pypy_openssl'
<arigato> last I tried, no problem
<fijal> ok, that's a bit why
<arigato> but that's a long while ago
<fijal> mattip: ^^^
<arigato> try to run the build script
<arigato> and see if and how it explodes
<fijal> how do I do that?
<arigato> uh? look for lib_pypy/somethingssl/build.py
<arigato> it's standard cffi
<fijal> ah
<fijal> arigato: no, it's the virtualenv that does not copy the _ssl module together with the rest
<arigato> bleh
<fijal> ok, my internet is outright unusable
forgottenone has joined #pypy
<fijal> ./lib_pypy/_pypy_openssl.pypy3-510-x86_64-linux-gnu.so
<fijal> that file does not get copied
<fijal> ok well that's a release blocker
* fijal tries something else
adamholmberg has joined #pypy
<fijal> ok, better
<fijal> pfff, it's likely not our fault, but it's very error-prone
antocuni has joined #pypy
<fijal> why has virtualenv be so error prone :/
<fijal> hack on hack on hack on hack....
asmeurer has joined #pypy
asmeurer has quit [Ping timeout: 272 seconds]
<mattip> you need to do "-mensurepip" before the cffi build scripts that try to build ssl
Nizumzen has joined #pypy
<mattip> maybe try describing from the beginning what you are trying to do
<cfbolz> mattip: yesterday I played with pypy as a jupyter kernel doing some numpy and Pillow stuff, it all worked flawlessly. That was super cool
<mattip> :)
<mattip> was it any faster?
<cfbolz> mattip: nope. It was an example that really did everything in python and the cost of array getitems killed performance
<cfbolz> But we'll get there
asmeurer has joined #pypy
asmeurer has quit [Ping timeout: 264 seconds]
dcrosta has joined #pypy
pedronis has quit [Ping timeout: 248 seconds]
<fijal> mattip: it's all like, sure, I did some mistakes
<fijal> or "mistakes"
<fijal> like not updating pip, installing virtualenv over the old one etc
<fijal> but it's all opaque errors that you try to shotgun debug
<fijal> it's mostly pip and virtualenv fault of course
pedronis has joined #pypy
<mattip> there is still an open pull request for pypy + virtualenv + windows that is languishing for almost a month now
<mattip> seems pypa needs more love
drolando has quit [Ping timeout: 264 seconds]
asmeurer has joined #pypy
drolando has joined #pypy
antocuni_ has joined #pypy
antocuni has quit [Ping timeout: 256 seconds]
Nizumzen has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/]
Nizumzen has joined #pypy
asmeurer has quit [Ping timeout: 248 seconds]
dcrosta has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
guilherme has joined #pypy
guilherme has quit [Ping timeout: 264 seconds]
<arigato> fijal: maybe you should have worded your comment to https://github.com/pypa/virtualenv/pull/1103 like this: it clearly changes nothing for CPython, so if it breaks anything it's at most PyPy
antocuni__ has joined #pypy
antocuni_ has quit [Ping timeout: 264 seconds]
antocuni_ has joined #pypy
antocuni__ has quit [Ping timeout: 240 seconds]
dcrosta has joined #pypy
kanaka has quit [Changing host]
kanaka has joined #pypy
tayfun26 has quit [Quit: tayfun26]
Nizumzen has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/]
Nizumzen has joined #pypy
dcrosta has quit [Quit: Textual IRC Client: www.textualapp.com]
asmeurer has joined #pypy
dcrosta has joined #pypy
asmeurer has quit [Ping timeout: 260 seconds]
<pjenvey> mattip: I merged it
iko has quit [Ping timeout: 255 seconds]
asmeurer has joined #pypy
<fijal> arigato: yes, can you please clarify?
<fijal> I don't have a computer on me
<fijal> Awesome :)
dcrosta has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
jamesaxl has quit [Read error: Connection reset by peer]
jamesaxl has joined #pypy
Jellyg00se has quit [Quit: Leaving]
asmeurer has quit [Ping timeout: 256 seconds]
tazle has quit [Ping timeout: 240 seconds]
mokos has quit [Remote host closed the connection]
tazle has joined #pypy
asmeurer has joined #pypy
zmt00 has joined #pypy
asmeurer has quit [Ping timeout: 256 seconds]
raynold has joined #pypy
norox has quit [Quit: gone]
norox has joined #pypy
tbodt has joined #pypy
tbodt has quit [Client Quit]
asmeurer has joined #pypy
tbodt has joined #pypy
tbodt has quit [Client Quit]
tbodt has joined #pypy
tbodt has quit [Client Quit]
<mattip> pjenvey: thanks
tbodt has joined #pypy
<mattip> gahh, what a mess. the win32 py3.5 build has the same problem fijal was struggling with before,
<mattip> Ignoring ensurepip failure: pip 9.0.1 requires SSL/TLS
tormoz has quit [Remote host closed the connection]
<mattip> (this is the ensurepip step from here http://buildbot.pypy.org/builders/pypy-c-jit-win-x86-32/builds/3563)
tbodt has quit [Client Quit]
tbodt has joined #pypy
asmeurer has quit [Ping timeout: 272 seconds]
tormoz has joined #pypy
tbodt has quit [Client Quit]
<mattip> we should rewrite our post-translations tests as a script that downloads the tar.gz and runs tests,
<mattip> then use it on all the buildbots which would unify the ARM testers with the other ones
tbodt has joined #pypy
tbodt has quit [Client Quit]
<mattip> so the buildbot would call this script which would live in the repo
<mattip> and could be tested offline
dcrosta has joined #pypy
tbodt has joined #pypy
tbodt has quit [Client Quit]
tbodt has joined #pypy
<mattip> ahh, ok, that ensurepip error is an old one from before I did some fixes, whew, I thought I was going crazy
mat^2 has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
tbodt has quit [Client Quit]
kenaan_ has joined #pypy
<kenaan_> mattip buildbot 46954035f3c6 /bot2/pypybuildbot/builds.py: install virtualenv HEAD to get win32 fix from pypa/virtualenv pr 1103
asmeurer__ has joined #pypy
tbodt has joined #pypy
tbodt has quit [Client Quit]
dcrosta has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
dcrosta has joined #pypy
adamholmberg has quit []
tbodt has joined #pypy
mentalita has quit [Quit: Leaving]
mentalita has joined #pypy
tbodt has quit [Client Quit]
adamholmberg has joined #pypy
kipras`away is now known as kipras
amaury has joined #pypy
tbodt has joined #pypy
antocuni_ has quit [Ping timeout: 263 seconds]
<kenaan_> cfbolz cpyext-faster-arg-passing 85fea167b9ea /pypy/module/cpyext/: speed up passing some objects to C specifically, passing the instances of classes defined in C ...
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
tbodt has quit [Client Quit]
tbodt has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
dcrosta has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
tbodt has quit [Client Quit]
<kenaan_> rlamy py3.5 da0e3f790bdb /pypy/objspace/std/celldict.py: Fix handling of unencodable strings in ModuleDictStrategy
<dmalcolm_> FWIW: "But the real win was switching to PyPy rather than CPython as the Python interpreter - it turns out this is exactly the kind of job load for which their JIT compilation shines." https://gcc.gnu.org/ml/gcc/2017-12/msg00076.html
amaury has quit [Ping timeout: 272 seconds]
forgottenone has quit [Quit: Konversation terminated!]
<cfbolz> oh no, not him :-(
aboudreault has joined #pypy
<dmalcolm_> (sorry)
amaury has joined #pypy
bbot2 has quit [Quit: buildmaster reconfigured: bot disconnecting]
bbot2 has joined #pypy
<kenaan_> rlamy py3.5 b3b1beda9224 /: Give up on trying to get test_multithreaded_import() to work untranslated
<ronan> ^^^ If anybody understands why the test fails on CPython 3.5, please tell
<mattip> cfbolz: it would be nice to devise an objective measure for the "goodness" of cpyext-faster-arg-passing
<mattip> in micronumpy we had tests that looked at traces
<cfbolz> mattip: ah, you mean as a test?
<mattip> yes
<cfbolz> I was aiming for having a benchmark that shows the improvement. The traces of cpyext are a bit too messy to see anything in them, at this point
<mattip> but those tests were very slow, so I am not sure I want too many of them in cpyext
<mattip> +1 for benchmark
<cfbolz> if we add a bench to speed, we can track (at least very big) slowdowns
<bbot2> Started: http://buildbot.pypy.org/builders/own-linux-x86-64/builds/6444 [ronan: force build, py3.5]
<mattip> ronan: many of the arm -A pypy.module.test_lib_pypy.cffi_tests tests are failing, saying they are missing cffi
<mattip> but pypy has cffi built in, so it must be the host python trying to import cffi
<mattip> does that make sense?
<ronan> mattip: that's related to what I noticed yesterday
<ronan> yes
* mattip looking at logs
<ronan> most of test_lib_pypy is broken on py3
<ronan> tests are running in the host python instead of pypy
<mattip> why is it different from any other module tests?
<ronan> test_lib_pypy is handled specially
<ronan> see pypy/conftest.py
<ronan> it works in pypy2 because regular -A tests run in the host
<ronan> but in pypy3, the host and the interpreter-under-test are different
<mattip> it all seems very fragile/complicated
<mattip> kind of like all the layers in the cpyext tests
<ronan> yes, that's why I've been pushing extra_tests/
<mattip> nice
<ronan> but well, we actually need to move (almost?) everything from test_lib_pypy to extra_tests
amaury has quit [Quit: Konversation terminated!]
amaury has joined #pypy
<mattip> might be an easy task for someone who wants to get involved in PyPy
Nizumzen has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/]
jamesaxl has quit [Quit: WeeChat 1.9.1]
* mattip zzz
<cfbolz> goodnight matti!
<kenaan_> rlamy py3.5 cb9a68d84f56 /pypy/module/cpyext/: Use CPython's C implementation for PyUnicode_FromWideChar (fixes size==-1 case)
guilherme has joined #pypy
guilherme has quit [Ping timeout: 240 seconds]
<bbot2> Failure: http://buildbot.pypy.org/builders/own-linux-x86-64/builds/6444 [ronan: force build, py3.5]
amaury has quit [Quit: Konversation terminated!]
kipras is now known as kipras`away
guilherme has joined #pypy
guilherme has quit [Remote host closed the connection]
drolando has quit [Remote host closed the connection]
drolando has joined #pypy
adamholmberg has quit [Remote host closed the connection]
guilherme has joined #pypy
guilherme has quit [Ping timeout: 256 seconds]
asmeurer__ has quit [Quit: asmeurer__]
guilherme has joined #pypy
tbodt has joined #pypy