cfbolz changed the topic of #pypy to: #pypy PyPy, the flexible snake https://pypy.org | IRC logs: https://quodlibet.duckdns.org/irc/pypy/latest.log.html#irc-end and https://libera.irclog.whitequark.org/pypy | the pypy angle is to shrug and copy the implementation of CPython as closely as possible, and staying out of design decisions
Apollyon has joined #pypy
derpydoo has quit [Ping timeout: 248 seconds]
jcea has quit [Ping timeout: 252 seconds]
Apollyon has quit [Ping timeout: 246 seconds]
itamarst has quit [Quit: Connection closed for inactivity]
xcm_ has joined #pypy
dmalcolm_ has joined #pypy
larstiq_ has joined #pypy
xcm has quit [Ping timeout: 245 seconds]
LarstiQ has quit [Ping timeout: 245 seconds]
dmalcolm has quit [Ping timeout: 245 seconds]
pjenvey has quit [Ping timeout: 245 seconds]
pjenvey has joined #pypy
lehmrob has joined #pypy
[Arfrever] has quit [Ping timeout: 272 seconds]
[Arfrever] has joined #pypy
[Arfrever] has quit [Ping timeout: 248 seconds]
[Arfrever] has joined #pypy
lehmrob has quit [Quit: Konversation terminated!]
jcea has joined #pypy
jcea has quit [Ping timeout: 248 seconds]
itamarst has joined #pypy
<arigato> korvo: yes, that's also my understanding. So in pypy we would list all "resoperations" generated by the JIT, write some C code for each of them, and use LLVM to generate ahead of time many "stencil" variants for each bit of code
<arigato> you'd just have to re-run LLVM if you make changes or if you want the stencils generated for a different platform
<arigato> what's cool is that it opens the door to more experiments, like measuring sequence of operations that appear often in practice, and asking LLVM to generate super-stencils for these
<arigato> ultimately, this could be done by the user: she runs her program producing dumps of produced resops, and then runs a program that will identify big super-stencils and compile them with LLVM, so that next time her program runs faster
derpydoo has joined #pypy
<korvo> Mm, makes sense. Super-stencils remind me of super-shaders for GPUs. When GL 2.0 came out, GPU drivers started adding GL 1.4 support via shaders that had parameters for the classic rendering pipeline.
<korvo> Super-shaders are only efficient because GPU bandwidth is so expensive that it is cheaper to not upload a new shader on every draw. Otherwise it normally wouldn't be worth it.
jcea has joined #pypy
jcea has quit [Ping timeout: 248 seconds]
antocuni_ has joined #pypy
antocuni has quit [Ping timeout: 258 seconds]
alice has quit [Ping timeout: 258 seconds]
alice has joined #pypy