-
-
Notifications
You must be signed in to change notification settings - Fork 32.6k
Closed
Labels
interpreter-core(Objects, Python, Grammar, and Parser dirs)(Objects, Python, Grammar, and Parser dirs)performancePerformance or resource usagePerformance or resource usage
Description
Many VM instructions consume references to their operands and produce a reference to a result, often of the same type.
For some of those, we specialize for common types.
We can speed up the operations by reusing one of the operands if the refcount is one.
For example, in BINARY_OP_ADD_FLOAT
if the refcount of the left operand is one, we can do the operation in place.
This is effectively free as we need to check the refcount of the operands in Py_DECREF()
anyway.
We have attempted doing this in the past, but got bogged down trying to merge the operation and the following store.
Linked PRs
Metadata
Metadata
Assignees
Labels
interpreter-core(Objects, Python, Grammar, and Parser dirs)(Objects, Python, Grammar, and Parser dirs)performancePerformance or resource usagePerformance or resource usage