No description
Four optimisations targeting the 11.4s chain-step critical path: 1. Drop legacy .mp.gz dual-write (~2.5-2.8s, 24% of step) The Elixir reader prefers .sgrid; the chunked gzip+msgpack write was pure overhead on the Rust write path. Removed scalar_future from both run_chain_step and run_analysis_step. 2. Parallelize wgrib2 decodes (~0.5-1s) sfc and prs decode ran serially (await sfc, then await prs). Both now spawn concurrently on the blocking pool. 3. Overlap sfc decode with prs fetch (~1-2s) sfc (9 messages) resolves before prs (39 messages). Start the sfc wgrib2 subprocess as soon as the sfc blob lands instead of waiting for both blobs. The sfc decode hides behind the remaining prs fetch. 4. Cap grib range retries from 5 to 3 2^n exponential backoff meant 1+2+4+8+16 = 31s worst-case per failed range. Three retries caps at 1+2+4 = 7s. 404s already fail fast. Also: instrument .sgrid write (observe_stage) so it appears in the prop_grid_rs_stage_duration_seconds histogram alongside fetch/decode/derive. Expected mean chain step: ~6-7s (down from 11.4s). |
||
|---|---|---|
| .forgejo/workflows | ||
| .github | ||
| assets | ||
| bin | ||
| config | ||
| docs | ||
| k8s | ||
| lib | ||
| lib_ml | ||
| nix | ||
| notebooks | ||
| priv | ||
| rel | ||
| rust/prop_grid_rs | ||
| scripts | ||
| test | ||
| vendor | ||
| .credo.exs | ||
| .dockerignore | ||
| .envrc | ||
| .formatter.exs | ||
| .gitignore | ||
| .tool-versions | ||
| AGENTS.md | ||
| algo.md | ||
| app.json | ||
| bugs.md | ||
| CLAUDE.md | ||
| Dockerfile | ||
| Dockerfile.base | ||
| flake.lock | ||
| flake.nix | ||
| LICENSE | ||
| Makefile | ||
| mix.exs | ||
| mix.lock | ||
| nix.md | ||
| prediction.md | ||
| README.md | ||
| shell.nix | ||
| tail_logs.sh | ||
| updates.md | ||
Microwaveprop
To start your Phoenix server:
- Run
mix setupto install and setup dependencies - Start Phoenix endpoint with
mix phx.serveror inside IEx withiex -S mix phx.server
Now you can visit localhost:4000 from your browser.
Ready to run in production? Please check our deployment guides.
Learn more
- Official website: https://www.phoenixframework.org/
- Guides: https://hexdocs.pm/phoenix/overview.html
- Docs: https://hexdocs.pm/phoenix
- Forum: https://elixirforum.com/c/phoenix-forum
- Source: https://github.com/phoenixframework/phoenix