MagicStack / MagicStack/py-pgproto
Some more cython optimizations ?
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Cython
- Sterne
- 38
- Forks
- 21
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
While working on ChunkedBuffer:
https://github.com/tzickel/chunkedbuffer
I think it's for calling python methods which are already bound to a Python object, it's faster to do instead of (check the annotated output):
self._bufs_popleft(...)
this:
with cython.optimize.unpack_method_calls(False):
self._bufs_popleft(...)
^^- but it's better to leave it though for calling other stuff, like when calling an .find directly.
Also instead of:
self._bufs = collections.deque()
it's less code
from collections import deque
self._bufs = deque()
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
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
Beginne mit ChunkedBuffer und dem verknüpften chunkedbuffer-Projekt, untersuche dann die annotierte Ausgabe für die Beispiele _bufs_popleft und collections.deque. Vergleiche die vorgeschlagenen Cython-Optimierungsänderungen mit dem aktuellen Verhalten und der aktuellen Performance; als abgeschlossen gilt die Aufgabe, wenn die lohnenswerten Optimierungen identifiziert und validiert wurden, ohne das Verhalten zu ändern.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python
- Bereich
- performance
- Issue-Typ
- Refactoring
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 35/100