cfbolz changed the topic of #pypy to: PyPy, the flexible snake (IRC logs: https://quodlibet.duckdns.org/irc/pypy/latest.log.html#irc-end ) | use cffi for calling C | if a pep adds a mere 25-30 [C-API] functions or so, it's a drop in the ocean (cough) - Armin
andi- has quit [Ping timeout: 248 seconds]
andi- has joined #pypy
<jacob22> lesshaste: You may have success with the C API of gmpy2.
igitoor has quit [Ping timeout: 260 seconds]
igitoor has joined #pypy
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
igitoor has quit [Changing host]
igitoor has joined #pypy
lritter has quit [Ping timeout: 268 seconds]
jvesely has joined #pypy
jcea has quit [Quit: jcea]
LarstiQ has quit [Ping timeout: 240 seconds]
LarstiQ has joined #pypy
jcea has joined #pypy
dddddd has quit [Remote host closed the connection]
jcea has quit [Remote host closed the connection]
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
zmt00 has joined #pypy
zmt01 has quit [Ping timeout: 260 seconds]
riddle has quit [Ping timeout: 265 seconds]
jvesely has quit [Quit: jvesely]
riddle has joined #pypy
<lesshaste> cfbolz, thanks
<lesshaste> jacob22, good point
<lesshaste> I have a very weird slowdown in pypy3 if I just increase the range of integers from 0...2**63-1 to 0..2**64-1. Is there a good tool to profile the code to tell which line is doing it?
<lesshaste> if you just change the 63 to 64 it slows down by a factor of 4
<lesshaste> why is that?
<Dejan> maybe because the difference between 2^64 and 2^63 is 8*10^24 :)
<Dejan> while 2^63-2^62 = 4*10^24 (4 times less)
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
<cfbolz> lesshaste: 2**63-1 is the biggest number representable by a machine long
<cfbolz> So going beyond that is slower
<lesshaste> cfbolz, oh because it is signed?
<cfbolz> lesshaste: yep
<lesshaste> cfbolz, hmm... does this mean that popcount won't be safe to rely on too?
<lesshaste> I am computing the hamming distance between two binary arrays by representing them as ints, doing XOR and then popcount
<lesshaste> A factor of 4 slow down does still seem odd to me as there is no multiplication going on. Just XOR and popcount
<lesshaste> Dejan, :)
<cfbolz> lesshaste: if you leave the range, the next step is using two integers for your values, so that's 2x right there
<lesshaste> cfbolz, yes
<lesshaste> cfbolz, I was wondering where the other 2x comes from
<cfbolz> Everything is suddenly a software algorithm
<cfbolz> lesshaste: if you want to share your code, we could take a look
<lesshaste> cfbolz, ^^
<cfbolz> There should really be a popcount in python
<lesshaste> yes. I was looking at julia and they have count_ones
<lesshaste> I do wonder if I should just move over to julia but I do like a popular language and there is a chance julia will never be popular
<bbot2> Started: http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64/builds/2859 [mattip: build historical data]
<Dejan> so you are a hipster
<Dejan> well, Python devs are hipsters too :)
<Dejan> my approach is - use the best tool for the job
<lesshaste> Dejan, true but for scientific research Python is awesome because of ease of use and the massive number of libraries and terrible because it is as slow as a snail :)
<lesshaste> Dejan, the lack of help to spot typos is also a serious problem
msjyoo has quit []
msjyoo has joined #pypy
dddddd has joined #pypy
<bbot2> Success: http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64/builds/2859 [mattip: build historical data]
speeder39_ has joined #pypy
<bbot2> Started: http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64/builds/2860 [mattip: build historical data]
<phlebas> lesshaste: re spotting typos; i was pleasantly surprised how well the microsoft language server for python works (even for the pypy codebase). works nicely in emacs and vi, not just vscode and such
<cfbolz> phlebas: ah, cool. at some point you need to tell me about it, I never managed to set it up nice for vscode
jcea has joined #pypy
jcea has quit [Ping timeout: 245 seconds]
jacob22 has quit [Read error: Connection reset by peer]
jacob22 has joined #pypy
Rhy0lite has joined #pypy
jvesely has joined #pypy
<bbot2> Success: http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64/builds/2860 [mattip: build historical data]
<bbot2> Started: http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64/builds/2861 [mattip: build historical data]
<mattip> finally got to a point where py3.6 to default benchmark comparisons are useful. There is alot of historical cruft that gets in the way
<mattip> for instance, here is a direct comparison of a py3.6 run to a default run
<mattip> spitfire_cstring2 is 22x slower, I wonder if that is true or a glitch
<mattip> django, telco are slower by 3x, 4x
jcea has joined #pypy
jcea has quit [Remote host closed the connection]
jcea has joined #pypy
Smigwell has joined #pypy
<mattip> simplified link
DarkPlutonium is now known as DarkUranium
YannickJadoul has joined #pypy
<Dejan> we all go back to Python2 now
<Dejan> :)
<Dejan> there are no cases when Python2 is considerably slower
<mattip> the benchmarks started as python2 code, so I would be surprised if python3 was faster
<Dejan> There are quite few where python3 is tinsy bit faster
<mattip> anything around 5% is probably just noise
<jacob22> There ought to be some low hanging fruit, now that we have actual measurements.
<mattip> I think I am pretty much happy with the way speed.pypy.org is working now, if there is something missing let me know
<Dejan> mattip, it is awesome
<Dejan> thanks
<jacob22> Comparisons of CPython3 and PyPy3 are what end users will ultimately be most interested in.
<mattip> we could graph that on the home page: either as a separate graph or as part of the 2nd graph in a different color
<mattip> but that "summary" is kind of misleading
<mattip> I guess it would be sort of easy to do a cpython3 benchmark run, and then the comparison page would have the info
<cfbolz> mattip: thanks for much for doing this!
<mattip> :)
speeder39_ has quit [Quit: Connection closed for inactivity]
lritter has joined #pypy
jvesely has quit [Quit: jvesely]
<bbot2> Success: http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64/builds/2861 [mattip: build historical data]
<bbot2> Started: http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64/builds/2862 [mattip: build historical data]
string has quit []
string has joined #pypy
<bbot2> Exception: http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64/builds/2862 [mattip: build historical data]
jacob22 has quit [Quit: Konversation terminated!]
<lesshaste> phlebas, I don't think I know about that!
<bbot2> Started: http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64/builds/2863 [mattip: build historical data]
rubdos has quit [Quit: WeeChat 2.4]
rubdos has joined #pypy
rubdos has quit [Client Quit]
rubdos has joined #pypy
rubdos has quit [Client Quit]
rubdos has joined #pypy
YannickJadoul has quit [Quit: Leaving]
fryguybob has quit [Ping timeout: 260 seconds]
fryguybob has joined #pypy
rubdos has quit [Quit: WeeChat 2.4]
rubdos has joined #pypy
jvesely has joined #pypy
jacob22 has joined #pypy
<bbot2> Success: http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64/builds/2863 [mattip: build historical data]
rubdos has quit [Quit: WeeChat 2.4]
rubdos has joined #pypy
zmt00 has quit [Quit: Leaving]
zmt00 has joined #pypy
Rhy0lite has quit [Quit: Leaving]
igitoor has quit [Ping timeout: 272 seconds]
igitoor has joined #pypy
<kenaan> mattip py3.6 95ba888acdd6 /pypy/module/cpyext/include/Python.h: issue 3160: include structseq.h (needed for PyStructSequence_InitType2 in NumPy)
igitoor has quit [Changing host]
igitoor has joined #pypy
Smigwell has left #pypy [#pypy]
adamholmberg has joined #pypy
jacob22 has quit [Quit: Konversation terminated!]
jacob22 has joined #pypy
jacob22 has quit [Ping timeout: 265 seconds]
Ai9zO5AP has quit [Ping timeout: 240 seconds]
Ai9zO5AP has joined #pypy
jacob22 has joined #pypy