Quicken everything #98686
Labels
3.12
bugs and security fixes
interpreter-core
(Objects, Python, Grammar, and Parser dirs)
performance
Performance or resource usage
...as discussed in faster-cpython/ideas#462.
Basically, we can simplify the quickening process by quickening code objects as they are created. This works by ditching our per-code-object warmup counter, and instead using our adaptive backoff counters for more-granular "warming".
I have a branch that implements this change, resulting in consistent a ~1% performance improvement. I imagine that this comes from several places:
RESUME_QUICK
andJUMP_BACKWARD_QUICK
are no longer needed.Next steps will be simplifying the unmarshal / code creation process as part of this same work.
HAS_ARG
#99106BINARY_OP_GENERIC
andCOMPARE_OP_GENERIC
#99399The text was updated successfully, but these errors were encountered: