Skip to content

Commit

Permalink
PEP 683: Update the Perf Regression With the Final Benchmark Results (#…
Browse files Browse the repository at this point in the history
  • Loading branch information
ericsnowcurrently committed Nov 28, 2023
1 parent 6aeaba7 commit 12e2765
Showing 1 changed file with 5 additions and 8 deletions.
13 changes: 5 additions & 8 deletions peps/pep-0683.rst
Original file line number Diff line number Diff line change
Expand Up @@ -230,20 +230,17 @@ those described above in `Motivation`_, reflect this improvement.
Performance
-----------

A naive implementation shows `a 4% slowdown`_. We have demonstrated
a return to ~performance-neutral~ with a handful of basic mitigations
applied. See the `mitigations`_ section below.
A naive implementation shows `a 2% slowdown`_ (3% with MSVC).
We have demonstrated a return to ~performance-neutral~ with a handful
of basic mitigations applied. See the `mitigations`_ section below.

.. _a 2% slowdown: https://github.com/python/cpython/pull/19474#issuecomment-1502245844

On the positive side, immortal objects save a significant amount of
memory when used `with a pre-fork model <Facebook>`_. Also, immortal
objects provide opportunities for specialization in the eval loop that
would improve performance.

.. _a 4% slowdown: https://github.com/python/cpython/pull/19474#issuecomment-1032944709

TODO: Update the performance impact for the latest branch
(both for GCC and for clang).

Backward Compatibility
----------------------

Expand Down

0 comments on commit 12e2765

Please sign in to comment.