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
gef has quit [Ping timeout: 240 seconds]
gef has joined #pypy
gef has quit [Read error: No route to host]
glyph has quit [*.net *.split]
kipras has quit [*.net *.split]
astronavt has quit [*.net *.split]
Gustavo6046 has quit [*.net *.split]
astronavt has joined #pypy
kipras has joined #pypy
Gustavo6046 has joined #pypy
glyph has joined #pypy
Gustavo6046 has quit [Max SendQ exceeded]
Gustavo6046 has joined #pypy
jcea has quit [Ping timeout: 250 seconds]
tos9 has quit [Quit: leaving]
gef has joined #pypy
a1paca has quit [Quit: Leaving]
Gustavo6046 has quit [Ping timeout: 268 seconds]
Gustavo6046 has joined #pypy
a1paca has joined #pypy
gef_ has joined #pypy
gef has quit [*.net *.split]
gef has joined #pypy
gef_ has quit [Ping timeout: 265 seconds]
jvesely has joined #pypy
jvesely has quit [Quit: jvesely]
dmalcolm__ has quit [Ping timeout: 265 seconds]
phlebas has quit [Ping timeout: 252 seconds]
samth has quit [Ping timeout: 258 seconds]
phlebas has joined #pypy
samth has joined #pypy
glyph has quit [Read error: Connection reset by peer]
glyph has joined #pypy
Dejan has joined #pypy
oberstet has joined #pypy
dmalcolm has joined #pypy
ShadeJonathan[m] has quit [*.net *.split]
tbodt has quit [*.net *.split]
tumbleweed has quit [*.net *.split]
runciter has quit [*.net *.split]
Kronuz has quit [*.net *.split]
trfl has quit [*.net *.split]
tbodt has joined #pypy
tumbleweed has joined #pypy
Kronuz has joined #pypy
ShadeJonathan[m] has joined #pypy
runciter has joined #pypy
trfl has joined #pypy
ServerStatsDisco has quit [Ping timeout: 258 seconds]
toad_polo has quit [Ping timeout: 258 seconds]
the_drow[m] has quit [Ping timeout: 258 seconds]
ShadeJonathan[m] has quit [Ping timeout: 248 seconds]
jryans has quit [Ping timeout: 245 seconds]
papangoo[m] has quit [Ping timeout: 258 seconds]
astrojl_matrix has quit [Ping timeout: 245 seconds]
Civil has quit [*.net *.split]
Civil has joined #pypy
jerith_ has quit [*.net *.split]
jerith_ has joined #pypy
alexhugo has quit [*.net *.split]
whitewolf has quit [*.net *.split]
xcm has quit [*.net *.split]
gsnedders has quit [*.net *.split]
xcm has joined #pypy
alexhugo has joined #pypy
ronan has quit [*.net *.split]
dstufft has quit [*.net *.split]
jeroud has quit [*.net *.split]
nimaje has quit [*.net *.split]
ctismer has quit [*.net *.split]
mwhudson has quit [*.net *.split]
antocuni has quit [*.net *.split]
Techcable has quit [*.net *.split]
WGH_ has quit [*.net *.split]
marvin_ has quit [*.net *.split]
Lightsword has quit [*.net *.split]
proteusguy has quit [*.net *.split]
bbot2 has quit [*.net *.split]
Eyess has quit [*.net *.split]
string has quit [*.net *.split]
kirma has quit [*.net *.split]
JStoker has quit [*.net *.split]
Ashleee has quit [*.net *.split]
LarstiQ has quit [*.net *.split]
tazle has quit [*.net *.split]
gutworth has quit [*.net *.split]
a1paca has quit [*.net *.split]
the_rat_ has quit [*.net *.split]
altendky has quit [*.net *.split]
ebarrett has quit [*.net *.split]
marmoute has quit [*.net *.split]
jiffe has quit [*.net *.split]
iko_ has quit [*.net *.split]
Hodgestar has quit [*.net *.split]
ulope has quit [*.net *.split]
shodan45 has quit [*.net *.split]
lastmikoi has quit [*.net *.split]
alcarith1 has quit [*.net *.split]
nimaje has joined #pypy
ctismer has joined #pypy
Ashleee has joined #pypy
antocuni has joined #pypy
jeroud has joined #pypy
dstufft has joined #pypy
WGH_ has joined #pypy
ronan has joined #pypy
jiffe has joined #pypy
altendky has joined #pypy
ebarrett has joined #pypy
JStoker has joined #pypy
LarstiQ has joined #pypy
marmoute has joined #pypy
iko_ has joined #pypy
marvin_ has joined #pypy
kirma has joined #pypy
proteusguy has joined #pypy
Lightsword has joined #pypy
string has joined #pypy
bbot2 has joined #pypy
Hodgestar has joined #pypy
Eyess has joined #pypy
the_rat_ has joined #pypy
gutworth has joined #pypy
tazle has joined #pypy
Techcable has joined #pypy
a1paca has joined #pypy
mwhudson has joined #pypy
ulope has joined #pypy
lastmikoi has joined #pypy
shodan45 has joined #pypy
alcarith1 has joined #pypy
whitewolf has joined #pypy
gsnedders has joined #pypy
glyph has quit [*.net *.split]
kipras has quit [*.net *.split]
alexhugo has quit [*.net *.split]
oberstet has quit [*.net *.split]
samth has quit [*.net *.split]
astronavt has quit [*.net *.split]
tazle has quit [Ping timeout: 240 seconds]
RemoteFox has joined #pypy
RemoteFox has left #pypy [#pypy]
tazle has joined #pypy
alexhugo has joined #pypy
oberstet has joined #pypy
glyph has joined #pypy
samth has joined #pypy
astronavt has joined #pypy
kipras has joined #pypy
luizirber has quit [*.net *.split]
habnabit_ has quit [*.net *.split]
Ninpo has quit [*.net *.split]
arigato has quit [*.net *.split]
arigo has joined #pypy
luizirber has joined #pypy
habnabit_ has joined #pypy
Ninpo has joined #pypy
the_drow[m] has joined #pypy
jryans has joined #pypy
Lightsword has quit [Ping timeout: 246 seconds]
astrojl_matrix has joined #pypy
bbot2 has quit [Ping timeout: 246 seconds]
bbot2_ has joined #pypy
proteusguy has quit [Ping timeout: 246 seconds]
proteusguy has joined #pypy
toad_polo has joined #pypy
SunDwarf has joined #pypy
Eyess has quit [Ping timeout: 246 seconds]
WGH_ has quit [Ping timeout: 246 seconds]
WGH_ has joined #pypy
forgottenone has joined #pypy
papangoo[m] has joined #pypy
ShadeJonathan[m] has joined #pypy
ServerStatsDisco has joined #pypy
<cfbolz> yay, we have quadratic algorithms that take up 30% of the time in rtyping!
forgottenone has quit [Quit: Konversation terminated!]
<fijal> cfbolz: does it have to be quadratic?
<cfbolz> No
<cfbolz> It's just silly
<Dejan> qhy quadratic when it can be cubic?
<LarstiQ> easy target for improvement?
<Dejan> s/qhy/why/
<LarstiQ> hence the yay? ;)
dmalcolm has quit [Remote host closed the connection]
tos9 has joined #pypy
arigo is now known as arigato
dmalcolm has joined #pypy
jcea has joined #pypy
jacob22_ has quit [Read error: Connection reset by peer]
jacob22_ has joined #pypy
jaffachief has joined #pypy
<antocuni> cfbolz: what is it?
<cfbolz> antocuni: we optimize every ll helper graph after creating it. But one of the optimizations walks all graphs
<antocuni> ouch
jvesely has joined #pypy
<cfbolz> pfffff
<cfbolz> it's more than a 3x speedup of the rtyping phase
a1paca has quit [Quit: Leaving]
<exarkun> nice
<antocuni> how much wall-time is saved on a full translation?
<cfbolz> antocuni: haven't done one yet
<cfbolz> antocuni: but on my O2 rtyping I am saving 6 minutes
<antocuni> nice! Lot of CO2 saved :)
<cfbolz> bit ridiculous that we never noticed
<cfbolz> now rtyping is much faster than annotation
<antocuni> time to find some O(2^N) algorithm in annotation then :)
<cfbolz> looking already, but less obvious
<cfbolz> pushed
Gustavo6046 has quit [Ping timeout: 258 seconds]
<tos9> wow
<ronan> cfbolz: how did you notice?
<cfbolz> ronan: I was bored and looked at the profile the first time in, don't know, years
<cfbolz> (mainly because I was annoyed a few times recently at waiting for translation
<cfbolz> )
<cfbolz> ronan: do you happen to have a clue what check_methods_qgen is for?
<ronan> hmmm, I vaguely remember having had a clue once...
<cfbolz> :-)
<cfbolz> it searches for "lost methods", but I can't say I have seen any of those in years
<cfbolz> it's possible that this cannot happen any more, by construction
<cfbolz> (costs 5% of annotation, maybe not enough to bother)
<ronan> cfbolz: this whole sanity check seems obsolete
<ronan> I remember killing some expensive checks in annotation, but I don't think I looked at this one
<cfbolz> ronan: right, it's also what I think in this case
<ronan> cfbolz: BTW, how do you profile? I remember it being painful last time I tried
<cfbolz> It is
_whitelogger has joined #pypy
<cfbolz> ronan: basically I usually try all profilers one after the other, until I learn something
long4mud has quit [Quit: WeeChat 3.0.1]
tos9 has joined #pypy
tos9 has quit [Ping timeout: 272 seconds]
tos9 has joined #pypy
Gustavo6046 has joined #pypy
tos9 has quit [Ping timeout: 265 seconds]
Gustavo6046 has quit [Ping timeout: 260 seconds]
Gustavo6046 has joined #pypy
tos9 has joined #pypy
Gustavo6046 has quit [Ping timeout: 260 seconds]
alexhugo has quit [Quit: Leaving]
Gustavo6046 has joined #pypy
Gustavo6046 has quit [Ping timeout: 260 seconds]
tos9 has quit [Ping timeout: 260 seconds]
tos9 has joined #pypy
forgottenone has joined #pypy
<ronan> cfbolz: I got a vmprof profile. I find insert_ll_stackcheck() pretty suspicious, all the time is spent in all_cycles()
<cfbolz> ronan: yes, agreed, that algorithm is a bit mysterious
<cfbolz> I'm a bit scared to touch it, the heuristics there are really important for performance
tos9 has quit [Ping timeout: 252 seconds]
Gustavo6046 has joined #pypy
tos9 has joined #pypy
ronan has quit [Remote host closed the connection]
ronan has joined #pypy
whitewolf has quit [*.net *.split]
gsnedders has quit [*.net *.split]
gsnedders has joined #pypy
whitewolf has joined #pypy
tos9 has quit [Ping timeout: 272 seconds]
<cfbolz> the pyjitpl phase got 2x faster too by the quadratic fix
<mattip> cool
jerith_ is now known as jerith
tos9 has joined #pypy
jcea has quit [Ping timeout: 245 seconds]
jcea has joined #pypy
dustinm has quit [Ping timeout: 240 seconds]
ronan has quit [Quit: Leaving]
dustinm has joined #pypy
ronan has joined #pypy
ronan has quit [Client Quit]
ronan has joined #pypy
<cfbolz> I can also get a 5x speedup on the compile_c phase by using a precompiled header for the huge shared .h file in GCC
<cfbolz> (just hacked it manually together, need to try to integrate it into the C backend)
<cfbolz> (clang gets the same kind of speedup, but needs different options)
oberstet has quit [Read error: Connection reset by peer]
jcea has quit [Read error: Connection reset by peer]
<mattip> there is a precompiled header for MSVC, but when I benchmarked it for GCC the savings was not that dramatic
<mattip> so the makefile code already should have some kind of support for it
<cfbolz> mattip: for gcc there are a lot of restrictions
<cfbolz> only a single .h file supported, for example
jvesely has quit [Ping timeout: 240 seconds]
tos9 has quit [Quit: leaving]
forgottenone has quit [Ping timeout: 265 seconds]
Lightsword has joined #pypy
Arfrever has quit [Quit: 御出で]
Arfrever has joined #pypy
lesshaste has quit [Remote host closed the connection]
lesshaste has joined #pypy
lesshaste is now known as Guest89092
Arfrever has quit [Read error: Connection reset by peer]
Arfrever has joined #pypy
Arfrever has quit [Read error: Connection reset by peer]
Arfrever has joined #pypy