Reduce perf trampoline overhead

Offen
#161,676 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Anfängerfreundlichkeit
20/100
Issue-Typ
Refactoring
Klarheit
Muss geklärt werden
Aktivitätsstatus
Veraltet
Tech-Stack
python
Bereich
performance

Rechercherichtung

Start by reading the linked PR gh-161677, which may show where work has moved. The issue identifies the -X perf PEP 523 trampoline and reports slowdowns across generators, calls, and pyperformance, but names no files or tests. Compare the implementation and benchmark results there; done means reducing the reported overhead.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

interpreter-core performance type-feature

-X perf makes Python code much slower. The perf trampoline is a PEP 523 hook, so specialized calls and generator resumes are disabled while it is active, and the trampoline evaluator keeps an extra native frame alive on every call.

Slowdown with -X perf on main (PGO + ThinLTO, Clang 21):

Benchmark Slowdown
generators +234%
generator_resumes +72%
python_calls +50%
scimark_lu +42%
pyperformance (geometric mean) +12%
Linked PRs
  • gh-161677
Vorherrschende Sprache
Python
Sterne
78.2k
Forks
36.6k
Ø Merge
19 Std. 57 Min.
Gemergte PRs (30 T.)
630

Entwicklungsumgebung

In Codespaces öffnen

Startet den Dev-Container des Projekts im Browser, mit Ihrem eigenen GitHub-Konto.

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus python/cpython

Alle Issues in python/cpython

Ähnliche Issues

Weitere Issues zu Python

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.