This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author Mark.Shannon
Recipients Mark.Shannon
Date 2021-05-20.11:15:19
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1621509319.67.0.0822328288042.issue44187@roundup.psfhosted.org>
In-reply-to
Content
As described in PEP 659 (Specializing Adaptive Interpreter) the first part of implementing specialization is to implement the machinery to do the quickening.

Conceptually, this is fairly simple: add a new field to the code object, which points to the first instruction in the bytecode.

When quickening, we create a new array, copy the old bytecode into it, and make the new field point to it.

Without any specialization or superinstructions, this will just waste memory.
However, it will pay off soon enough as we implement superinstructions, remove the old "opcache" and add new specializations.

We expect to see worthwhile speed ups with just superinstructions, and large speedups when all the above features have been implemented.
History
Date User Action Args
2021-05-20 11:15:19Mark.Shannonsetrecipients: + Mark.Shannon
2021-05-20 11:15:19Mark.Shannonsetmessageid: <1621509319.67.0.0822328288042.issue44187@roundup.psfhosted.org>
2021-05-20 11:15:19Mark.Shannonlinkissue44187 messages
2021-05-20 11:15:19Mark.Shannoncreate