# PEP 683: "Immortal Objects, Using a Fixed Refcount" (round 4, last call)

**URL:** <https://discuss.python.org/t/pep-683-immortal-objects-using-a-fixed-refcount-round-4-last-call/18183>\
**Category:** PEPs\
**Created:** [August 12, 2022, 9:43pm UTC](https://discuss.python.org/t/pep-683-immortal-objects-using-a-fixed-refcount-round-4-last-call/18183 "2022-08-12T21:43:12Z")\
**Posts on this page:** 1\
**Showing post:** 31

<div class="post-metadata">

**Author:** ![kiri11](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/kiri11/32/9201_2.png) [@kiri11](https://discuss.python.org/u/kiri11)\
**Post date:** [May 3, 2023, 7:37pm UTC](https://discuss.python.org/t/pep-683-immortal-objects-using-a-fixed-refcount-round-4-last-call/18183/31 "2023-05-03T19:37:18Z")

</div>

@eelizondo @eric.snow  
Since the implementation is [merged](https://github.com/python/cpython/pull/19474), let’s update the PEP 683 with final performance numbers (for all platforms in 32- and 64-bit modes).

Additionally, could you please update the PEP to reflect that the final implementation uses 0xFFFFFFFF (32 lower bits) in 64-bit mode instead of 2^62 or 2^60 `_Py_IMMORTAL_BIT`? This affects calculations in the Accidental Immortality section: 16 seconds to immortalize instead of 2,500 days and other sections such as [\_Py\_IMMORTAL\_REFCNT](https://peps.python.org/pep-0683/#py-immortal-refcnt).

You could also elaborate the Maintainability section to mention that there are now 3 different ways of working with refcounts (normal, immortal 32-bit and immortal 64-bit) and string interning became more complicated. And I think you meant “it should **not** have much impact on maintainability” (add not).

Finally, in the last section Reference Counting, with Cyclic Garbage Collection:

1. This is just generic info about GC. While helpful, it does immediately clear how is it related to immortal objects. I assume the whole reference cycle will not be collected if there is at least one immortal object in it. Could you please add this for clarity?
2. Fix typo: “before it’s memory is freed” → “before its memory is freed”

I hope you find my suggestions helpful! I can go ahead and create a PR if you’d like my help, but PEP1 recommends to discuss with the author first.

---

_[View the full topic](https://discuss.python.org/t/pep-683-immortal-objects-using-a-fixed-refcount-round-4-last-call/18183)._
