René's URL Explorer Experiment


Title: bpo-32346: speed up slot lookup during class creation by pitrou · Pull Request #4902 · python/cpython · GitHub

Open Graph Title: bpo-32346: speed up slot lookup during class creation by pitrou · Pull Request #4902 · python/cpython

X Title: bpo-32346: speed up slot lookup during class creation by pitrou · Pull Request #4902 · python/cpython

Description: The Python programming language. Contribute to python/cpython development by creating an account on GitHub.

Open Graph Description: Instead of looking up every possible slot in every class along the MRO (generating possibly hundreds of dict lookups), cache the known descriptors of each type so that finding them again is simply ...

X Description: Instead of looking up every possible slot in every class along the MRO (generating possibly hundreds of dict lookups), cache the known descriptors of each type so that finding them again is simply ...

Opengraph URL: https://github.com/python/cpython/pull/4902

X: @github

direct link

Domain: github.com

route-pattern/:user_id/:repository/pull/:id/commits(.:format)
route-controllerpull_requests
route-actioncommits
fetch-noncev2:dbd121bb-da82-74b4-7f75-b543b6e1bc92
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idE7D8:29812D:2172D4D:2D145F7:6A59A291
html-safe-nonce85073f4607723725edf184548884a3e6d57a2c459149f855c2d79dff337fcf68
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJFN0Q4OjI5ODEyRDoyMTcyRDREOjJEMTQ1Rjc6NkE1OUEyOTEiLCJ2aXNpdG9yX2lkIjoiNjgyMjkxNjg1NzAxNDEwMDYyNSIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9
visitor-hmacb76bc7f8b0e77c9d44502e65ec1fb978b116312d8c8c2e9e9ae277e28897cf43
hovercard-subject-tagpull_request:158742591
github-keyboard-shortcutsrepository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///pull_requests/show/commits
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/python/cpython/pull/4902/commits
twitter:imagehttps://opengraph.githubassets.com/8e3450cf5273f436c4d51885e52621e3cc4ecb74eaa801b5679f6283245d3692/python/cpython/pull/4902
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/8e3450cf5273f436c4d51885e52621e3cc4ecb74eaa801b5679f6283245d3692/python/cpython/pull/4902
og:image:altInstead of looking up every possible slot in every class along the MRO (generating possibly hundreds of dict lookups), cache the known descriptors of each type so that finding them again is simply ...
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
og:author:usernamepitrou
hostnamegithub.com
expected-hostnamegithub.com
Nonea540949572872b935b393b36db38922db390ae71c859537d741b8f3eb7e545b5
turbo-cache-controlno-cache
go-importgithub.com/python/cpython git https://github.com/python/cpython.git
octolytics-dimension-user_id1525981
octolytics-dimension-user_loginpython
octolytics-dimension-repository_id81598961
octolytics-dimension-repository_nwopython/cpython
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id81598961
octolytics-dimension-repository_network_root_nwopython/cpython
turbo-body-classeslogged-out env-production page-responsive
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release0b971869dd75eec26500a9de7e85b8137c6bf0f6
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/python/cpython/pull/4902/commits#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython%2Fcpython%2Fpull%2F4902%2Fcommits
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub Copilot appDirect agents from issue to mergehttps://github.com/features/ai/github-app
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
View all resourceshttps://github.com/resources
GitHub SponsorsFund open source developershttps://github.com/open-source/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/open-source/accelerator
GitHub Starshttps://stars.github.com
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/enterprise/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython%2Fcpython%2Fpull%2F4902%2Fcommits
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fpull_requests%2Fshow%2Fcommits&source=header-repo&source_repo=python%2Fcpython
Reloadhttps://github.com/python/cpython/pull/4902/commits
Reloadhttps://github.com/python/cpython/pull/4902/commits
Reloadhttps://github.com/python/cpython/pull/4902/commits
Please reload this pagehttps://github.com/python/cpython/pull/4902/commits
python https://github.com/python
cpythonhttps://github.com/python/cpython
Please reload this pagehttps://github.com/python/cpython/pull/4902/commits
Notifications https://github.com/login?return_to=%2Fpython%2Fcpython
Fork 34.9k https://github.com/login?return_to=%2Fpython%2Fcpython
Star 73.8k https://github.com/login?return_to=%2Fpython%2Fcpython
Code https://github.com/python/cpython
Issues 5k+ https://github.com/python/cpython/issues
Pull requests 2.3k https://github.com/python/cpython/pulls
Actions https://github.com/python/cpython/actions
Projects https://github.com/python/cpython/projects
Security and quality 0 https://github.com/python/cpython/security
Insights https://github.com/python/cpython/pulse
Code https://github.com/python/cpython
Issues https://github.com/python/cpython/issues
Pull requests https://github.com/python/cpython/pulls
Actions https://github.com/python/cpython/actions
Projects https://github.com/python/cpython/projects
Security and quality https://github.com/python/cpython/security
Insights https://github.com/python/cpython/pulse
pitrouhttps://github.com/pitrou
python:masterhttps://github.com/python/cpython/tree/master
pitrou:speedup_type_creationhttps://github.com/pitrou/cpython/tree/speedup_type_creation
Conversationhttps://github.com/python/cpython/pull/4902
Commits9 (9)https://github.com/python/cpython/pull/4902/commits
Checkshttps://github.com/python/cpython/pull/4902/checks
Files changedhttps://github.com/python/cpython/pull/4902/files
bpo-32346: speed up slot lookup during class creationhttps://github.com/python/cpython/pull/4902/commits#top
pitrouhttps://github.com/pitrou
python:masterhttps://github.com/python/cpython/tree/master
pitrou:speedup_type_creationhttps://github.com/pitrou/cpython/tree/speedup_type_creation
bpo-32346: speed up slot lookup during class creationhttps://github.com/python/cpython/pull/4902/commits/4b2e41c14789378ca2c02a46d579641dd8423a37
https://github.com/pitrou
pitrouhttps://github.com/python/cpython/commits?author=pitrou
4b2e41chttps://github.com/python/cpython/pull/4902/commits/4b2e41c14789378ca2c02a46d579641dd8423a37
https://github.com/python/cpython/tree/4b2e41c14789378ca2c02a46d579641dd8423a37
Merge branch 'master' of https://github.com/python/cpython into speedup_type_creationhttps://github.com/python/cpython/pull/4902/commits/57df85d0d85dcedc2947746950e27cd790f4776a
https://github.com/pitrou
pitrouhttps://github.com/python/cpython/commits?author=pitrou
57df85dhttps://github.com/python/cpython/pull/4902/commits/57df85d0d85dcedc2947746950e27cd790f4776a
https://github.com/python/cpython/tree/57df85d0d85dcedc2947746950e27cd790f4776a
Also speed up add_operators()https://github.com/python/cpython/pull/4902/commits/d7f6b4d6841bf731ae6e05b934304334654ba982
https://github.com/pitrou
pitrouhttps://github.com/python/cpython/commits?author=pitrou
d7f6b4dhttps://github.com/python/cpython/pull/4902/commits/d7f6b4d6841bf731ae6e05b934304334654ba982
https://github.com/python/cpython/tree/d7f6b4d6841bf731ae6e05b934304334654ba982
Add NEWS blurbhttps://github.com/python/cpython/pull/4902/commits/1702e22a03c201472b8abba12e4f711222f9c305
https://github.com/pitrou
pitrouhttps://github.com/python/cpython/commits?author=pitrou
1702e22https://github.com/python/cpython/pull/4902/commits/1702e22a03c201472b8abba12e4f711222f9c305
https://github.com/python/cpython/tree/1702e22a03c201472b8abba12e4f711222f9c305
Merge branch 'master' into speedup_type_creationhttps://github.com/python/cpython/pull/4902/commits/ab17d15c26cdfffa6268c7a93609338d80c6f8d2
https://github.com/pitrou
pitrouhttps://github.com/python/cpython/commits?author=pitrou
ab17d15https://github.com/python/cpython/pull/4902/commits/ab17d15c26cdfffa6268c7a93609338d80c6f8d2
https://github.com/python/cpython/tree/ab17d15c26cdfffa6268c7a93609338d80c6f8d2
Merge branch 'master' into speedup_type_creationhttps://github.com/python/cpython/pull/4902/commits/89963ea72d97d6fe0a75fc8d8c26fbe436c76437
https://github.com/pitrou
pitrouhttps://github.com/python/cpython/commits?author=pitrou
89963eahttps://github.com/python/cpython/pull/4902/commits/89963ea72d97d6fe0a75fc8d8c26fbe436c76437
https://github.com/python/cpython/tree/89963ea72d97d6fe0a75fc8d8c26fbe436c76437
Merge branch 'master' into speedup_type_creationhttps://github.com/python/cpython/pull/4902/commits/c39d280faeae9734544e4e93a975c0cf2faa038b
https://github.com/pitrou
pitrouhttps://github.com/python/cpython/commits?author=pitrou
c39d280https://github.com/python/cpython/pull/4902/commits/c39d280faeae9734544e4e93a975c0cf2faa038b
https://github.com/python/cpython/tree/c39d280faeae9734544e4e93a975c0cf2faa038b
Merge branch 'master' into speedup_type_creationhttps://github.com/python/cpython/pull/4902/commits/9026dccd989c1e7af28e257fc85d5ba11fc3baa2
https://github.com/pitrou
pitrouhttps://github.com/python/cpython/commits?author=pitrou
9026dcchttps://github.com/python/cpython/pull/4902/commits/9026dccd989c1e7af28e257fc85d5ba11fc3baa2
https://github.com/python/cpython/tree/9026dccd989c1e7af28e257fc85d5ba11fc3baa2
Reuse tp_cache for tp_defined_slotshttps://github.com/python/cpython/pull/4902/commits/694e1b062a95e4b5ad440343fb67e948e02a4c05
https://github.com/pitrou
pitrouhttps://github.com/python/cpython/commits?author=pitrou
694e1b0https://github.com/python/cpython/pull/4902/commits/694e1b062a95e4b5ad440343fb67e948e02a4c05
https://github.com/python/cpython/tree/694e1b062a95e4b5ad440343fb67e948e02a4c05
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.