You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Lower BEFORE_WITH and BEFORE_ASYNC_WITH to attribute lookups and calls. #120507
With the JIT and better tier 2 optimizations, effective specialization is becoming more important that plain speed in tier 1.
BEFORE_WITH and BEFORE_ASYNC_WITH could be specialized, but they are bulky and won't optimize well in tier 2.
Instead, we should lower them to attribute lookups and calls which can then be optimized.
We should add a LOAD_SPECIAL instruction for loading dunder methods and replace BEFORE_WITH as follows:
Activity
markshannon commentedon Jun 17, 2024
No performance impact
https://github.com/faster-cpython/benchmarking-public/tree/main/results/bm-20240617-3.14.0a0-68df0a5
pythongh-120507: Double WASI memory
gh-120507: Double WASI memory (#120648)
GH-120507: Lower the `BEFORE_WITH` and `BEFORE_ASYNC_WITH` instructio…
pythonGH-120507: Lower the `BEFORE_WITH` and `BEFORE_ASYNC_WITH` inst…
pythongh-120507: Double WASI memory (python#120648)
pythonGH-120507: Lower the `BEFORE_WITH` and `BEFORE_ASYNC_WITH` inst…
pythongh-120507: Double WASI memory (python#120648)
pythonGH-120507: Lower the `BEFORE_WITH` and `BEFORE_ASYNC_WITH` inst…
pythongh-120507: Double WASI memory (python#120648)
pythonGH-120507: Lower the `BEFORE_WITH` and `BEFORE_ASYNC_WITH` inst…