Optimize Raster Reader Memory Usage for Hazard Module
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 35/100
Direzione di ricerca
Start with the HazardXarrayReader class and its get_hazard_kwargs() method, where the raster data is turned into centroid coordinates for the hazard module. The issue leaves open whether the new options should default to filtering out no-data and zero-intensity points, so settle that with the maintainers first. Done means that centroids are built only for the selected coordinates, with the options exposed on the reader and covered by tests.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
The current raster readers for the hazard module require building centroids for every point across the total extent of the raster. For high-resolution rasters, this leads to excessive memory requirements.
The construction requires building a Centroid grid for every point of the raster (even for no-data points)
Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Describe the solution you'd like
(Add an option to?) Sub-select the dataset to coordinates which are not always NaN (also 0?)
This approach would save substantial RAM and computation time.
Specifically:
- add optional attributes to
HazardXarrayReader(e.g.ignore_novalue_coords(default True) andignore_zero_intensity_coords(default False) - based on these attributes, sub-select the data in the
get_hazard_kwargs()method, to generate Centroids only for the corresponding coordinates.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
- This is related to the refactoring of the centroids (GeoDataFrame)
- This issue affects both read raster and potentially write raster methods? (a priori not)
- Lingua principale
- Jupyter Notebook
- Stelle
- 478
- Fork
- 166
- Merge medio
- 1g 20h
- PR unite (30g)
- 2
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di CLIMADA-project/climada_python
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
CLIMADA-project/climada_python#1337 ·
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
CLIMADA-project/climada_python#1336 ·
-
CartoDB basemaps now need an API key (somewhat urgent)Forse già presa Una pull request collegata a questa issue è aperta o già unita. Apertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
CLIMADA-project/climada_python#1332 · 4 commenti · 1 reazione ·
-
more than 20 open figuresApertawarnings
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
CLIMADA-project/climada_python#1241 ·
-
ResourceWarningApertawarnings
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
CLIMADA-project/climada_python#1239 ·
Tutte le issue di CLIMADA-project/climada_python
Issue simili
-
ReadBufferStream.addBuffer adds the full ArrayBuffer of a typed array view, and ignores its byteOffsetForse già presa @wayfarer3130 l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
UKGovernmentBEIS/optstop#10 ·
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
cairndev-sh/cairn#225 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 77/100
-
good first issue task workshop-1
Difficoltà 2/5 1-3 ore Idoneità per principianti 90/100