Skip to content

PEP 703 Deferred reference counts #121459

Closed
Closed
@Fidget-Spinner

Description

@Fidget-Spinner

Feature or enhancement

Proposal:

PEP 703 proposes deferred reference counting to reduce contention between threads on shared objects' reference count fields.

This issue is not in conflict with Faster CPython's scheme of fully removing reference counts in the eval loop. In fact, some of the work runs parallel to it and will actually help it.

There are 3 wins I can observe right now:

  • deferring LOAD_GLOBAL
  • deferring LOAD_ATTR
  • deferring frames' strong references on the code object and function (this is the hardest of the three)

I shall proceed in this order.

Has this already been discussed elsewhere?

No response given

Links to previous discussion of this feature:

No response

Linked PRs

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions