FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Move stats for the method cache into the `Py_STAT` machinery by markshannon · Pull Request #100255 · python/cpython · GitHub

/ cpython Public

Move stats for the method cache into the Py_STAT machinery - #100255

Merged
markshannon merged 4 commits into
python:mainfrom
faster-cpython:type-cache-stats
Dec 15, 2022
Merged

Move stats for the method cache into the Py_STAT machinery#100255
markshannon merged 4 commits into
python:mainfrom
faster-cpython:type-cache-stats

Conversation

Copy link
Copy Markdown
Member

Resulting table looks like this:

Object stats

Count Ratio
Allocations from freelist 4,589,260,808 46.0%
...
Method cache hits 1,525,324,505
Method cache misses 69,170,546
Method cache collisions 73,503,400
Method cache dunder hits 2,066,830,615
Method cache dunder misses 4,345,814

netlify Bot commented Dec 14, 2022
edited
Loading

Copy link
Copy Markdown

Deploy Preview for python-cpython-preview ready!

Name Link
🔨 Latest commit 6d6aa01
🔍 Latest deploy log https://app.netlify.com/sites/python-cpython-preview/deploys/639a222a34381700086655dd
😎 Deploy Preview https://deploy-preview-100255--python-cpython-preview.netlify.app
📱 Preview on mobile Toggle QR Code...



Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site settings.

markshannon requested a review from mdboom December 14, 2022 19:22

carljm left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

LGTM

Comment thread Objects/typeobject.c
Comment on lines +4174 to +4175
OBJECT_STAT_INC_COND(type_cache_misses, !is_dunder_name(name));
OBJECT_STAT_INC_COND(type_cache_dunder_misses, is_dunder_name(name));

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

I assume there's no user of these stats who will care that the definition of a "miss" now includes collisions whereas before it excluded collisions? Obviously the same information is derivable either way.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

The old stats were only available if MCACHE_STATS was defined, which could only be done by editing the source or build. There is no configure option. So, I don't see how there can be a user.

markshannon merged commit 48e352a into python:main Dec 15, 2022
carljm added a commit to carljm/cpython that referenced this pull request Dec 16, 2022
* main:
  Improve stats presentation for calls. (pythonGH-100274)
  Better stats for `LOAD_ATTR` and `STORE_ATTR` (pythonGH-100295)
  pythongh-81057: Move the Cached Parser Dummy Name to _PyRuntimeState (python#100277)
  Document that zipfile's pwd parameter is a `bytes` object (python#100209)
  pythongh-99767: mark `PyTypeObject.tp_watched` as internal use only in table (python#100271)
  Fix typo in introduction.rst (python#100266)
  pythongh-78997: AttributeError if loading fails in LibraryLoader.__getattr__
  pythonGH-100234: Set a default value for random.expovariate() (pythonGH-100235)
  Remove uninformative itertools recipe (pythonGH-100253)
  pythonGH-99767: update PyTypeObject docs for type watchers (pythonGH-99928)
  Move stats for the method cache into the `Py_STAT` machinery (pythonGH-100255)
  pythonGH-100222: fix typo _py_set_opocde -> _py_set_opcode (pythonGH-100259)
  pythonGH-100000: Cleanup and polish various watchers code (pythonGH-99998)
  pythongh-90111: Minor Cleanup for Runtime-Global Objects (pythongh-100254)
markshannon deleted the type-cache-stats branch September 26, 2023 12:53
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants


Back | FazBrowse Home | New Git URL