Skip to content

ArWen 2.6.4

Choose a tag to compare

@FahrenheitResearch FahrenheitResearch released this 02 Sep 07:51
· 67 commits to main since this release

A third cumulus scheme, and two fixes that were live in 2.6.3: nest
relocation leaked the physics driver, and the prepared cache refused
every tree written before 2.6.1.

New:

  • cu_physics = 16 selects New Tiedtke, the WRF v4.6.1 module_cu_ntiedtke
    scheme ported to CUDA. All 21 stages and the assembled pipeline reproduce
    the byte-frozen Fortran bitwise over an 18-case, 6-spacing oracle corpus
    that ships with the wheel. It requires a PBL scheme and cudt_minutes = 0
    and refuses by name otherwise; its state rides across a restart; chunking
    is proven not to imprint (nine of nine output files byte-identical at two
    chunk widths on a real two-domain case). ntiedtke_tiedtke_closure
    (default off) runs its kernels with classic Tiedtke's deep closure.
    docs/cumulus-new-tiedtke.md records the scheme's grid-thickness deep
    first guess and what it does to a tropical-cyclone core.
  • Per-level diabatic heating is written for every configuration
    (H_DIABATIC, RTHRATLW, RTHRATSW). The three were computed each step
    and discarded; writing them changes no forecast value.

Fixed:

  • Nest relocation freed neither the dropped physics driver nor its cumulus
    adapter: the two held each other in a reference cycle, so every relocation
    left the whole driver graph resident on the card (measured per relocation:
    Grell-Freitas 35 MiB, New Tiedtke 61 MiB, Kain-Fritsch 1.3 MiB). The
    adapter now releases its driver at relocation and the receipt carries
    cumulus_workspace_bytes. Output is byte-identical before and after.
  • Prepared trees written before run.p3_backend joined the run config were
    refused with these identity fields differ: run.p3_backend. The field
    joins the tolerant identity table: it is scoped to mp_physics = 50, so a
    tree written before it existed could not have selected a backend, and a
    tree that carries a value is still compared strictly.

Credit:

  • Roch contributed the New Tiedtke port, its oracle corpus and suites, and
    both fixes.