Optimize Raster Reader Memory Usage for Hazard Module
Los mantenedores suelen responder en 3 días
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 35/100
Línea de trabajo
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.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
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)
- Lenguaje dominante
- Jupyter Notebook
- Estrellas
- 478
- Forks
- 166
- Merge medio
- 2 d 31 min
- PR fusionados (30 d)
- 4
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de CLIMADA-project/climada_python
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
CLIMADA-project/climada_python#1337 ·
Los mantenedores suelen responder en 3 días
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
CLIMADA-project/climada_python#1336 ·
Los mantenedores suelen responder en 3 días
-
CartoDB basemaps now need an API key (somewhat urgent)Posiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
CLIMADA-project/climada_python#1332 · 4 comentarios · 1 reacción ·
Los mantenedores suelen responder en 3 días
-
more than 20 open figuresAbiertowarnings
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
CLIMADA-project/climada_python#1241 ·
Los mantenedores suelen responder en 3 días
-
ResourceWarningAbiertowarnings
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
CLIMADA-project/climada_python#1239 ·
Los mantenedores suelen responder en 3 días
Todos los issues de CLIMADA-project/climada_python
Issues similares
-
[MOVIE]: Barbarella (1968)Abiertorequest-theme
Dificultad 1/5 Menos de una hora Aptitud para principiantes 78/100
LizardByte/ThemerrDB#9390 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Add: Elyssa TVAbiertochannels:add check:passed
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
talmolab/sleap-roots-training#79 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
Los mantenedores suelen responder en 3 días
-
bug downstream-visible good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
exmergo/dex#778 · 1 comentario ·
Los mantenedores suelen responder en 1 día