NCAS-CMS / NCAS-CMS/cf-python

Potentially slow iteration for setting condition value units

Offen
#511 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

dask performance
Vorherrschende Sprache
Python
Sterne
150
Forks
23
Ø Merge
1 T. 11 Std.
Gemergte PRs (30 T.)
2

Beschreibung

As noted by @davidhassell in the review thread https://github.com/NCAS-CMS/cf-python/pull/427#discussion_r1040910208, the crux being:

if a large set is stored as a Data object, as opposed to a python built-in like a list, then iterating through it could be slow

relating to the code (currently on the lama-to-dask branch only):

https://github.com/NCAS-CMS/cf-python/blob/f17e08ee69b271c3b595131ef93d25f4bb3c2395/cf/query.py#L890-L896

with a suggested solution of:

For the Data object case we could just change the units without iterating through.

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 cf/query.py in den Zeilen 890–896 und der zugehörigen Diskussion in Pull Request 427, wobei du dich darauf konzentrierst, wie durch Data-Objekte dargestellte Bedingungswerte behandelt werden. Bestätige das Verhalten im lama-to-dask-Branch und erhalte das bestehende Ergebnis der Einheiteneinstellung, während du eine Iteration über große Data-Objekte vermeidest.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
data
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

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