Skip to content

ArWen 2.2.0

Choose a tag to compare

@FahrenheitResearch FahrenheitResearch released this 13 Aug 10:04
· 11 commits to main since this release

Streamed forecasts now run through the normal config. Put a [tiles] table in a plain TOML, keep your physics, and a domain too big to fit the card runs anyway, with output bit-identical to a resident run.

New

  • [tiles] in a plain TOML streams a forecast through gpuwm go, with default physics and either radiation option.
  • A domain too big to hold in VRAM is admitted and run by default, with no flags: gpuwm go and gpuwm check now price a streamed run as streamed, not as the resident run it is not.
  • Streamed output is bit-identical to a resident run of the same config, field for field and byte for byte, including the running maxima.
  • tools/streamed_frame_parity.py compares two runs and reports any field, value or provenance difference between them.
  • The HRRR horizontal operator runs in the Rust bridge, 107x faster than the mirror it replaces and identical bit for bit.
  • Shortwave radiation is armored against the 5090's subnormal flushing with inline PTX, so the same code gives the same numbers on that card.

Fixed

  • A streamed run no longer drops OLR from its output. Every frame it wrote was missing that field, and the run still reported success.
  • A streamed frame that cannot publish everything a resident run publishes is now refused, instead of being written short and passing validation.
  • Radiation provenance on a streamed file no longer says nobody wrote the surface fields when radiation demonstrably ran.
  • UP_HELI_MAX is bit-identical under tiling. It differed at one point per frame, on a tile boundary.
  • gpuwm check no longer tells you that streaming is refused by the forecast routes. It has not been for a release.
  • Reflectivity is published by a streamed run rather than refused an hour into a healthy forecast.
  • Legacy RRTMG builds its shortwave engine once per process instead of once per tile buffer.

Known issues

  • The HRRR native route refuses a [tiles] table by name, before any download. Support is planned.

Full detail in CHANGELOG.md.