-
-
Notifications
You must be signed in to change notification settings - Fork 32.1k
Reduce the size of plain Python objects from 8 to 6 machine words. #95245
New issue
Have a question about t 8000 his project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Labels
pending
The issue will be closed if no feedback is provided
performance
Performance or resource usage
Comments
markshannon
added a commit
that referenced
this issue
Aug 1, 2022
markshannon
added a commit
that referenced
this issue
Aug 16, 2022
markshannon
added a commit
that referenced
this issue
Aug 30, 2022
Is there anything left to do here? |
Nothing more to do. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
pending
The issue will be closed if no feedback is provided
performance
Performance or resource usage
Currently a plain Python object has the following fields:
The
WASTED
field is present because, due to alignment, we must allocate a multiple of 2 words.We can reduce this to 6 by merging the values and __dict__ pointers into one (only one can be valid at any time),
and then moving the __weakrefs__ field into the empty space.
See faster-cpython/ideas#125 for full discussion
The text was updated successfully, but these errors were encountered: