-
Notifications
You must be signed in to change notification settings - Fork 0
Estado
Víctor Hernández edited this page Sep 15, 2026
·
2 revisions
English · Español
Última actualización: septiembre de 2026
| Etapa | Objetivo | Estado |
|---|---|---|
| 0 | Red de seguridad: tests de regresión, comprobaciones de determinismo, integración continua | ✅ Hecho |
| 1 | Correcciones del núcleo y base de seguridad del portal | ✅ Hecho |
| 2 | Rendimiento y endurecimiento | ✅ Hecho |
| — | Consolidación antes de la etapa 3 | ✅ Hecho |
| 3 | Generalización: ambos hemisferios, régimen polar, parámetros configurables, máscaras CF-NetCDF | 🔄 En curso |
| 4 | Seguimiento temporal de episodios (TempestExtremes) y portal desplegable | 📅 Previsto |
| 5 | Validación frente a índices de bloqueo establecidos y despliegue público | 📅 Previsto |
- Resolución de la rejilla y límites de latitud tomados del fichero de entrada al ejecutar, sin recompilar.
- Ambos hemisferios con la misma lógica.
- Todos los umbrales en un único fichero de parámetros, volcado en la cabecera de cada salida.
- Filtros por área real de la celda en lugar de por número de celdas.
- Estructuras que cruzan el meridiano ±180° o el polo tratadas como un único objeto.
- Categoría propia para las altas polares.
- Tests de simetría entre hemisferios y de invariancia a la resolución de la rejilla.
- Validación de principio a fin del portal completo: petición, ejecución del núcleo, mapas y resultados.
- Tests automáticos del portal en navegador, obligatorios en cada pull request.
- Las peticiones del portal usan las versiones OpenMP y MPI del núcleo.
- Peticiones simultáneas gestionadas por separado y errores del pipeline notificados al usuario.
- Tests de integración de la API en la integración continua.
- Variante de temperatura: agrupamiento iterativo, identificadores y centroides reales de cada agrupación y su propio test de regresión.
- Más tests de la validación de entrada del núcleo y tipado más estricto en la API.
Núcleo científico
- Escalado OpenMP corregido. En un caso ERA5 de 60 pasos con 12 hilos, el tiempo bajó de unos 10 s a unos 5 s.
- Lectura de la entrada paso a paso: la memoria pico pasó de 75 MB a menos de 30 MB.
- Versiones MPI e híbrida MPI + OpenMP corregidas y cubiertas por tests de determinismo. Con 12 procesos, el mismo caso tarda unos 2,6 s.
- Coste de cálculo medido frente a TempestExtremes en las mismas condiciones.
Portal
- El rol del usuario se lee de la base de datos en cada petición.
- CORS limitado a una lista blanca y cabeceras de seguridad añadidas.
- Limitación de peticiones, sobre todo en la autenticación.
- Documentación de la API desactivada en producción.
- Endpoint de estado (health check).
- Los errores del pipeline se notifican al usuario en lugar de dejar las peticiones esperando.
Mediciones detalladas: docs/benchmark.md.
AtmosBlock · Licencia MIT · 🌐 English / Español