Repository navigation
ArWen 2.6.4
·
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 = 16selects New Tiedtke, the WRF v4.6.1module_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 andcudt_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.mdrecords 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_backendjoined the run config were
refused withthese identity fields differ: run.p3_backend. The field
joins the tolerant identity table: it is scoped tomp_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.