Carl Friedrich Bolz-Tereick pushed to branch branch/default at PyPy / pypy


Commits:
c9b12366 by Carl Friedrich Bolz-Tereick at 2023-08-21T19:30:55+02:00
a branch in which to improve the complexity problems of the flowspace for very
large graphs

--HG--
branch : flowspace-quadratic

- - - - -
61d99f2e by Carl Friedrich Bolz-Tereick at 2023-08-21T19:35:07+02:00
speedup FlowContext.getstate a lot by making FlowContext.STORE_FAST and
FlowContext.DELETE_FAST slightly slower. the former is much more common than
the latter (indeed, there is a call to getstate for every call of the
bytecodes)

--HG--
branch : flowspace-quadratic

- - - - -
829a3196 by Carl Friedrich Bolz-Tereick at 2023-08-21T22:12:34+02:00
don't recursively_flatten everything, only the stack, which is the only 
place
where unrollers can be

--HG--
branch : flowspace-quadratic

- - - - -
dd13d116 by Carl Friedrich Bolz-Tereick at 2023-08-22T08:51:18+02:00
more efficient hasjrel check

--HG--
branch : flowspace-quadratic

- - - - -
a08c0997 by Carl Friedrich Bolz-Tereick at 2023-08-22T09:04:15+02:00
promote the opnum if we're translating on pypy

this means we can constant-fold the self.opnames read and also it means the
subsequent method lookup using getattr in FlowContext.handle_bytecode is
constant-folded

bit of a weird check-in, but helps a lot

--HG--
branch : flowspace-quadratic

- - - - -
86c81cb8 by Carl Friedrich Bolz-Tereick at 2023-08-22T09:19:35+02:00
have special implementations for constfold for pure operations with one and two
arguments. this avoids the 'all' loop and the list comprehension in the 
general
version

--HG--
branch : flowspace-quadratic

- - - - -
1e8db00f by Carl Friedrich Bolz-Tereick at 2023-08-22T09:26:54+02:00
somewhat more efficient getoutputargs

--HG--
branch : flowspace-quadratic

- - - - -
980c80f9 by Carl Friedrich Bolz-Tereick at 2023-08-22T13:27:13+02:00
fix monkeypatching

--HG--
branch : flowspace-quadratic

- - - - -
98bf08b7 by Carl Friedrich Bolz-Tereick at 2023-08-24T19:35:36+02:00
merge flowspace-quadratic

speed up the flowspace a lot for huge functions

- - - - -


6 changed files:

- rpython/flowspace/bytecode.py
- rpython/flowspace/flowcontext.py
- rpython/flowspace/framestate.py
- rpython/flowspace/operation.py
- rpython/flowspace/test/test_framestate.py
- rpython/flowspace/test/test_objspace.py


View it on Heptapod: 
https://foss.heptapod.net/pypy/pypy/-/compare/5e93c89b7d958877a1596d5a3e0ac61745b00762...98bf08b713a88b718138c2383ff11240788eeb1e

-- 
View it on Heptapod: 
https://foss.heptapod.net/pypy/pypy/-/compare/5e93c89b7d958877a1596d5a3e0ac61745b00762...98bf08b713a88b718138c2383ff11240788eeb1e
You're receiving this email because of your account on foss.heptapod.net.


_______________________________________________
pypy-commit mailing list -- pypy-commit@python.org
To unsubscribe send an email to pypy-commit-le...@python.org
https://mail.python.org/mailman3/lists/pypy-commit.python.org/
Member address: arch...@mail-archive.com

Reply via email to