Reduce overhead of pushing and popping frames in Python-to-Python calls.
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Python
- Sterne
- 77.2k
- Forks
- 36k
- PR-Merge-Kennzahlen
- PR-Kennzahlen ausstehend
Beschreibung
The cost of pushing a frame for Python-to-Python calls is much lower than it used to be, but still considerably higher than it could be.
Pushing a frame should be little more than a space check and a pointer bump. Similarly popping the frame, should just be a pointer adjustment.
We want to be able to add "shim" and proxy frames for performance and debugging. To be able to do that, the cost of frame popping and pushing should be as low as possible.
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Es werden keine Dateien, Tests oder konkreten Einstiegspunkte genannt. Beginne damit, die Implementierung des Pushens und Poppens von Frames für Python-to-Python-Aufrufe zu finden, und ermittle anschließend Messwerte für den aktuellen Overhead; abgeschlossen ist die Arbeit, wenn diese Operationen auf die genannten Ziele für den Space-Check, den Pointer-Bump und die Pointer-Anpassung hin reduziert werden, wobei die Unterstützung für Shim- und Proxy-Frames erhalten bleibt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python
- Bereich
- performance
- Issue-Typ
- Refactoring
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 25/100