python / python/cpython

use argument clinic for more socket functions

Offen
#135,748 4 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

extension-modules performance topic-argument-clinic topic-socket type-refactor
Vorherrschende Sprache
Python
Sterne
77.2k
Forks
35.9k
PR-Merge-Kennzahlen
PR-Kennzahlen ausstehend

Beschreibung

Some methods of socket still uses VARARGS calling convention which is slow, AC can be used to simplify arg parsing as well as speed up the arg parsing. This is important for asyncio as it heavily calls these API.

This shows up in asyncio flame graphs as well:

Image

Linked PRs
  • gh-135749
  • gh-155257

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit der Überprüfung der Socket-Methoden, die noch die VARARGS-Aufrufkonvention verwenden, sowie der verknüpften PRs gh-135749 und gh-155257. Verwende das asyncio-Flamegraph als Kontext; abgeschlossen ist die Aufgabe, wenn die relevante Socket-Argumentanalyse Argument Clinic verwendet und den gemeldeten asyncio-Parsing-Overhead verbessert.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
c, python
Bereich
networking, performance
Issue-Typ
Refactoring
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

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